摘要:题目地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1677首先要求最大生成树,来保证图的连通性(基于贪心的思想--尽量炸代价小的路,能炸得更多) 然后在资金足够的情况下,一一去炸代价小的路,直到钱不够当前最便宜的路了,break掉代码:#include#include#include#include#includeusing namespace std;int p[50005];struct edge{ int id; int x; int y; int w;};edge e[100005];...
阅读全文
摘要:题目地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2678题解 : 1本题的答案就是gcd(m,n) 2解释是这样的,棋盘上的点是 (i,j) 0<=i<=m-1; 0<=j<=n-1; 从(a,b)走k步到达的点就是 ((a+k)%m, (b+k)%n) 现在的问题就是,至少需要多少个整数对 (a,b) 构成一个 点集,使得 对任意的i,j ,0<=i<=m-1; 0<=j<=n-1;在这个点集中一定存在一个 (a0,b0) ,和一个整数k 。 成立着 ...
阅读全文
摘要:1 a,m和不一定互素的时候,欧拉定理的应用 a^phi(m)%m=a^(k*phi(m) ) %m (证明用到中国剩余定理)2 发现A 满足的同余式以后 ,由于phi(m)#include#includeusing namespace std;typedef long long inta;int p[3000];vector v;void make_prime(){ for(int i=2;i s; for(int i=0;i>p>>m) { if(tag==1) coutlong long f[] = {1, 1, 2, 6, 24, 120, 720, 5040, 40
阅读全文
摘要:比赛地址:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=25749解题报告: http://blog.watashi.ws/640/andrew-stankevich-8-solution/
阅读全文