上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 22 下一页
摘要: #define MAXN 10 //MAXN为表示X集合和Y集合顶点个数最大值的符号常量int nx, ny; //X和Y集合中顶点的个数int g[MAXN][MAXN]; //邻接矩阵,g[i][j]为1表示Xi和Yj有边相连int cx[MAXN] , cy[MAXN]; //cx[i]表示最终求得的最大匹配中与Xi匹配的Y顶点, cy[i]同理DFS增广//DFS算法中记录顶点访问状态的数组,mk[i] = 0表示未访问过,为1表示访问过int mk[MAXN] ;//从X集合中的顶点u出发,用深度优先的策略寻找增广路//(这种增广路只能使当前的... 阅读全文
posted @ 2014-03-04 20:19 哥的笑百度不到 阅读(519) 评论(0) 推荐(0) 编辑
摘要: void tarjan(int u){ int v; dfn[u] = low[u] = ++cnt;//开始时dfn[u] == low[u] S[top++] = u;//进栈 vis[u] = true; for (int i=head[u]; i!=-1; i=Edge[i].next) { v = Edge[i].to; if (dfn[v] == 0)//如果v点还未遍历 { tarjan(v);//向下遍历 low[u] = low[u] dfn[v])//... 阅读全文
posted @ 2014-03-04 19:59 哥的笑百度不到 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 输入事例:7 91 2 281 6 10 2 3 162 7 143 4 124 5 224 7 185 6 255 7 24输出:1 6 10 6 5 25 5 4 224 3 123 2 162 7 14weight if MST is 991 #include 2 #include 3 #define INF 1000000 //无穷大 4 #define MAXN 21 //顶点个数最大值 5 6 int n, m; //顶点个数、边数 7 int Edge[MAXN][MAXN]; //邻接矩阵 8 int lowcost... 阅读全文
posted @ 2014-03-04 19:40 哥的笑百度不到 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 无向图连通图(割) int bridge,edge[v][v],ans[v],prve[v],vis[v];// vis[i] 0为尚未访问 1为正在访问 2已经访问//ans[i] 该点能到达的最小序号// pre[i] 该点的序号// INIT: edge[][]邻接矩阵;vis[],pre[],anc[],deg[]置为0; //k=deg[0], deg[i]+1(i=1…n-1) 为删除该节点后得到的连通图个数 // 注意:0作为根比较特殊!void dfs(int cur,int father,int dep,int n){ int cnt = 0; vis[cur] = 1; . 阅读全文
posted @ 2014-03-04 18:53 哥的笑百度不到 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 无向图找桥 int bridge,edge[v][v],ans[v],prve[v],vis[v];// vis[i] 0为尚未访问 1为正在访问 2已经访问//ans[i] 该点能到达的最小序号// pre[i] 该点的序号void dfs(int cur,int father,int dep,int n){ if(bridge) // 已经找到桥 return ; vis[cur] = 1; pre[cur] = ans[cur] = dep; for(int i=0;ipre[cur]) { bridge = 1; return ; } } } vis[cur] ... 阅读全文
posted @ 2014-03-04 18:44 哥的笑百度不到 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 基础练习 01字串 时间限制:1.0s 内存限制:256.0MB问题描述对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:0000000001000100001100100请按从小到大的顺序输出这32种01串。输入格式本试题没有输入。输出格式输出32行,按从小到大的顺序每行一个长度为5的01串。样例输出00000000010001000011#include "stdio.h"int main(){ int a,b,c,d,e; for(a = 0;a <= 1;a++) for(b = 0;b <= 1;b++) ... 阅读全文
posted @ 2014-02-26 21:43 哥的笑百度不到 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 基础练习 杨辉三角形 时间限制:1.0s 内存限制:256.0MB问题描述杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。 它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。 下面给出了杨辉三角形的前4行: 1 1 1 1 2 1 1 3 3 1 给出n,输出它的前n行。输入格式输入包含一个数n。输出格式输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空格。样例输入4样例输出11 11 2 11 3 3 1数据规模与约定1 using namespace std;int main... 阅读全文
posted @ 2014-02-26 21:01 哥的笑百度不到 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 十进制转十六进制 时间限制:1.0s 内存限制:512.0MB问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。 给出一个非负整数,将它表示成十六进制的形式。输入格式 输入包含一个非负整数a,表示要转换的数。0#include #include #include using namespace std;void pow1... 阅读全文
posted @ 2014-02-26 19:58 哥的笑百度不到 阅读(742) 评论(0) 推荐(0) 编辑
摘要: 基础练习 十六进制转十进制 时间限制:1.0s 内存限制:512.0MB问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。 注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。样例输入FFFF样例输出65535 #include #include #include #include#include using namespace std;void pow1(char *s){ int len =strlen(s); __int64 a=0; for(int i=0;i=48) { ... 阅读全文
posted @ 2014-02-26 19:20 哥的笑百度不到 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 人见人爱A^BTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 17803Accepted Submission(s): 12571Problem Description求A^B的最后三位数表示的整数。说明:A^B的含义是“A的B次方”Input输入数据包含多个测试实例,每个实例占一行,由两个正整数A和B组成(1#includeusing namespace std;int pow1(int a,int b){... 阅读全文
posted @ 2013-11-06 20:05 哥的笑百度不到 阅读(163) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 22 下一页