上一页 1 2 3 4 5 6 7 8 ··· 12 下一页
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2818//其实rank[x]也能表示x下面的元素个数,但为什么不用rank[x]呢,因为需要维护每个rank[x],而我们只希望有一个rank,即根节点的总子节点个数 //union操作最多3w,而fin... 阅读全文
posted @ 2014-03-20 12:57 neverchanje 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2819//对于n*n矩阵的n行,我们要求每行都要有一个特别的1与其匹配,如果匹配数少于n,则输出-1//二分图的构造方法是 第i行的第j列有一个1,那就在ij之间连一条边,则map[i][j]=1(后来发... 阅读全文
posted @ 2014-03-20 12:52 neverchanje 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2817//学习了,vc编译器下,64位数是 _int64 , g++下是long long //原来问题出在取余和二分上面 //q的k次方可以二分 ... 阅读全文
posted @ 2014-03-20 12:50 neverchanje 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 表面是TSP,其实不是,只是比较简单的数学,最简单的方法就是直接画图,一开始找到奇数行的时候最短路径为a*b,但是偶数行的时候感觉比较麻烦,但是实际上画了图以后才发现其实偶数行的最短路径不难找//从测试样例来看,最少的路径是所有的点数//但是画过图以后就会发现 //奇数行的时候可以达成最少路径为点数... 阅读全文
posted @ 2014-03-06 19:56 neverchanje 阅读(143) 评论(0) 推荐(0) 编辑
摘要: //a*b指的是一行b个元素 //DFS //如果存在X则有1*12,否则为0,且1,2,3,4,5,6都不存在,如果有一个'O'则12*1不存在 //检验b=6时,对每一个ch[i]进行检验,判断ch[i]=='X'且ch[i+6]=='X',如果6不存在的话,2,3一定也不存在(但是代码上没写)... 阅读全文
posted @ 2014-03-06 07:50 neverchanje 阅读(130) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 12 下一页