上一页 1 ··· 3 4 5 6 7 8 9 10 下一页
摘要: /*设过s步后两青蛙相遇,则必满足以下等式:(x+m*s)-(y+n*s)=k*l变形得:(n-m)*s+k*l=x-y令:a=n-m,b=l,c=x-y得:a*s+b*k=c,根据扩展欧几里德:只要c%gcd(a,b)==0,则两青蛙能相遇,否则不能。所以原问题可用扩展欧几里德解方程。*/代码:View Code1#include<iostream>2#include<cstdio>3usingnamespacestd;4__int64exgcd(__int64a,__int64b,__int64&x,__int64&y)5{6if(b==0)7{8x 阅读全文
posted @ 2012-07-30 12:49 pony1993 阅读(620) 评论(1) 推荐(0) 编辑
摘要: Clonedfrom:UESTCSummerTraining#6DivisionII题目来源:UralRegionalSchoolProgrammingContest2011(Ural1873—1884)题目挺水,而且有的还挺好玩的,本来五个小时的比赛,由于时间关系,开了两个半小时,实际用时不到2个小时,共12道题,两个人组队做出来了6道。ProblemA Ural1873 GOVChronicles这是一个纯英语阅读理解,题目描述2000个单词左右,里面出现了11个人,让你数出来每个人参加过几次比赛。代码:View Code 1#include<iostream>2#includ 阅读全文
posted @ 2012-07-30 05:56 pony1993 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 题目来源:The7thZhejiangUniversityProgrammingContests (ZOJ2834—2841)ProblemBZOJ2835MagicSquare水题,不解释。代码:View Code 1#include<iostream>2#include<cstdio>3#include<cstring>4#include<algorithm>5usingnamespacestd;6intmain()7{8intn,i,j,s1,s2,flag;9inta[11][11],b[1001];10while(~scanf(&quo 阅读全文
posted @ 2012-07-28 23:14 pony1993 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 图1 如图-1所示,在这个运输网络中,源点S和汇点T分别是1,7,各边的容量为C(u,v)。图中红色虚线所示就是一个可行流。标准图示法如图-2所示:其中p(u,v)/c(u,v)分别表示该边的实际流量与最大容量。关于最大流 熟悉了什么是网络流,最大流也就很好理解了。就是对于任意的u∈V-{s},使得p(s,u)的和达到最大。上面的运输网络中,最大流如图-3所示:MaxFlow=p(1,2)+p(1,3)=2+1=3。 在介绍最大流问题之前,先介绍几个概念:残余网络,增广路径,反向弧,最大流定理以及求最大流的Ford-Fulkerson方法。残余网络增广路径反向弧 观察... 阅读全文
posted @ 2012-07-28 10:39 pony1993 阅读(500) 评论(3) 推荐(0) 编辑
摘要: 看完了第一道题,感觉贪心可做,然后跟cz说了一下,他去写,然后我去看另外一道题,就这样悲剧开始了,被坑了一下午,看了一道自认为不算太难的题,然后自己写写,试了点数据感觉不怎么对,然后删了重新想,一直就在纠结,中间交流了一下其他题,在我试图暴力第二道题失败后继续思考那道题,就这样思考到了最后1个小时果断放弃去交流其他题了。最后貌似那道题只有11个队过了。。赛后看了下题解:较难的动态规划题、、、Orz。。1001Hero代码:View Code1#include<iostream>2#include<cstdio>3#include<cstring>4#incl 阅读全文
posted @ 2012-07-26 19:41 pony1993 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 【基本概念】:二分图:二分图又称作二部图,是图论中的一种特殊模型。设G=(V,E)是一个无向图,如果顶点V可分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个顶点i和j分别属于这两个不同的顶点集(iinA,jinB),则称图G为一个二分图。无向图G为二分图的充分必要条件是,G至少有两个顶点,且其所有回路的长度均为偶数。最大匹配:给定一个二分图G,在G的一个子图M中,M的边集中的任意两条边都不依附于同一个顶点,则称M是一个匹配. 选择这样的边数最大的子集称为图的最大匹配问题,如果一个匹配中,图中的每个顶点都和图中某条边相关联,则称此匹配为完全匹配,也称作完备匹配.最小覆. 阅读全文
posted @ 2012-07-25 10:14 pony1993 阅读(11752) 评论(0) 推荐(0) 编辑
摘要: 给定一个有向图G,对于任意一条有向边<Vi,Vj>,称Vi是Vj的直接前驱,Vj是Vi的直接后继,这种前驱与后继的关系具有传递性。 如果一个图的任何一个节点都具有反自反性,也就是说任何一个节点都不是自己的前驱或后继,那么这个有向图是拓扑有序的。拓扑序列:通常,这样的线性序列称为满足拓扑次序(Topological Order)的序列,简称拓扑序列。简单的说,由某个集合上的一个偏序得到该集合上的一个全序,这个操作称之为拓扑排序。离散数学中关于偏序和全序的定义: 若集合X上的关系是R是自反的、反对称的和传递的,则称R是集合X上的偏序关系。 设R是集合X上的偏序(Partial Orde 阅读全文
posted @ 2012-07-24 16:10 pony1993 阅读(850) 评论(0) 推荐(0) 编辑
摘要: 1001Clairewd’s message题目大意:第一行输入字母加密规则,第二行输入一个串a以及加密后的a’组成了一个串a’a。但是这个串残缺了一部分内容(a的部分残缺了),只剩下了s=a’b(b是a的一个前缀或者空串)让求出最短的a。View Code1#include<map>2#include<cstdio>3#include<cstring>4#include<iostream>5constintmaxn=100001;6usingnamespacestd;7intmain()8{9chars[27],s1[maxn];10intl1 阅读全文
posted @ 2012-07-20 10:11 pony1993 阅读(493) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4006题意很简单,求第k大的数。用优先队列,输入的时候,队首元素是最小的,每输入一个元素,队列掺毒是否大于 K,若大于k,删除队首元素,这样队首元素永远是第k大的数。#include <iostream>#include <cstdio>#include <queue>#include <vector>#include <algorithm>using namespace std;int main(){ int n,m,i,a; char 阅读全文
posted @ 2012-07-19 10:16 pony1993 阅读(192) 评论(1) 推荐(0) 编辑
摘要: 树状数组是一个查询和修改复杂度都为log(n)的数据结构,假设数组a[1..n],用lowbit函数维护了一个树的结构那么查询a[1]+...+a[n]的时间是log级别的,而且是一个在线的数据结构,支持随时修改某个元素的值,复杂度也为log级别。来观察这个图:令这棵树的结点编号为C1,C2...Cn。令每个结点的值为这棵树的值的总和,那么容易发现:C1 = A1C2 = A1 + A2C3 = A3C4 = A1 + A2 + A3 + A4C5 = A5C6 = A5 + A6C7 = A7C8 = A1 + A2 + A3 + A4 + A5 + A6 + A7 + A8C16 = A1 阅读全文
posted @ 2012-07-19 07:36 pony1993 阅读(211) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 下一页

View My Stats