
算法示例
SYLAS_LINUX
这个作者很懒,什么都没留下…
展开
-
宽度优先示例
宽度优先原创 2015-10-22 17:19:24 · 515 阅读 · 0 评论 -
tarjan
#include <stdio.h>#include <string.h>int map[10][10];int stack[10];int top;int instack[10];int dfn[10], low[10];int index;int M,N;void tarjan(int v){ int j; dfn[v] = low[v] = ++index;转载 2015-10-25 11:34:13 · 450 阅读 · 0 评论 -
suffix array
#include <stdio.h>#include <string.h>char num[4001];int suffix[4001];int mark[4001];int comparel(char* a, char*b){ int i; for(i = 0; a[i] !=0 && b[i] != 0; i++) { if(a[i] != b[原创 2015-10-25 11:31:51 · 761 阅读 · 0 评论 -
递归
#include <stdio.h>int N;int data[26][26];int look(int vpos, int hpos){ int sum = 0; if(data[vpos][hpos] == 1) { sum++; data[vpos][hpos] = 0; if(hpos<N)原创 2015-10-25 11:26:13 · 386 阅读 · 0 评论 -
password
#include <stdio.h>#include <string.h>char pass[1002];int main(void){ int tc, T; int i, j, dep, maxdep; int tmpi,tmpj, flag; setbuf(stdout, NULL); scanf("%d", &T); for(tc = 0;原创 2015-10-25 11:22:57 · 495 阅读 · 0 评论 -
括号匹配
#include <stdio.h>#include <string.h>char a[31],name[31];int b[31],num,top;void getname(){ int i,popnum; char tmp; popnum = 0; for(i = 0; name[i] != 0; i++) { if(name[i]原创 2015-10-25 11:19:03 · 417 阅读 · 0 评论 -
图着色
#include<stdio.h>int color[100];int c[100][100];//存储n个顶点的无向图的数组int colok(int k )//判断顶点k的着色是否发生冲突{ int i,j; for(i=1;i<k;i++) if(c[k][i]==1&&color[i]==color[k]) return 0;原创 2015-10-25 11:13:21 · 678 阅读 · 0 评论 -
硬币兑换
#include <stdio.h>#include <string.h>int Answer;int main(void){ int T, test_case; int types,coin[11],changes; int i,j; int m[64002]; // freopen("input.txt", "r", stdin); setb原创 2015-10-25 11:11:59 · 723 阅读 · 0 评论 -
匈牙利算法示例
#include <stdio.h>#include <string.h>int N,M;int map[201][201];int pair[201],visit[201];int num;int dfs(int v){ int i; if(visit[v] == 0) { visit[v] = 1; for(i = 1; i <原创 2015-10-25 11:08:37 · 542 阅读 · 0 评论 -
dfs穷举
#include <stdio.h>#include <string.h>int Answer, N, sum;int map[13][13];int visited[13];void dfs(int v, int k){ int i; if(k == N && map[v][1] > 0) { if(sum + map[v][1] < Answer原创 2015-10-25 11:05:18 · 563 阅读 · 0 评论 -
prim
#include <stdio.h>#include <string.h>#define MaxInt 0x3f3f3f3fint Answer;int map[102][102];int visited[102],low[102];int n;int prim(){ int i,j,pos,min,result=0; memset(visited,0,sizeof(visi原创 2015-10-22 17:28:51 · 828 阅读 · 2 评论 -
田忌
#include <stdio.h>#include <limits.h>int N;int a[101];int b[101];int Answer;void sort(){ int i,j,tmp; for(i = 1; i <= N; i++) { for(j = i+1; j <= N; j++) {原创 2015-10-25 11:36:07 · 575 阅读 · 0 评论