05 2015 档案
摘要:法一直接暴力枚举a和b的值,法二扩展欧几里德算法。#include #include #include #include #include #include #include #include #include #include #include #include #include ...
阅读全文
摘要:题意:让你求费伯纳西数列的第a的b次方项模n的结果。由于是每一项都对n取模,所以不同的n值都会对应一个周期,只要循环一下。当前项等于f1,前一项等于f0时就可以跳出循环了。 a的b次方,可以用幂取模的知识,快速分治求出。 注意第二个样例a要先模一下周期,不然会有溢出。 刚开是long...
阅读全文
摘要:#include#include#includeusing namespace std;bool cmp(int a,int b){ return a>b;}int main(){ int i,n,exp[1024],a[10],ans,cnt,now; while...
阅读全文
摘要:就是样例第二组数据超过long long的数据范围,所以特判一下就好了。#include#includeint main(){ int n; long long int a,b,t; scanf("%d",&n); while(n--) { ...
阅读全文
摘要:应该是从上周六开始看这本书,起因是其他人发的一张书中内容截图。作者讲到技能的反面中的总结部分——如何考察一个人是否精通魔方:a.给面试者一个各面打乱颜色的魔方;b.要求他把六面还原;c.如果还原了,要求他把魔方恢复成我最初给他的那个混乱的局面,必须一模一样。看到这些,最近自己也在思考这个问题,自己学...
阅读全文
摘要:刚开始遇到这类题目,感觉很棘手,网上搜了一下也没有比较好的分析,自己理解后决定好好写一写。题目:意思是输入两个虫子编号,表示这两只虫子性别不同,一轮数据下来问你有没有不符合逻辑的。比如开始已经判断某两只虫子x,y是公的了,新输入了x y,显然不符合前面的判断,这种情况下结果输出”Su...
阅读全文
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;int s...
阅读全文
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;int n...
阅读全文
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;int t...
阅读全文
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;const...
阅读全文
摘要:#include#include#includeusing namespace std;const int N=10000+5;int n,bin[N],tot[N],cnt[N];//tot是转移次数,cnt是龙珠次数int _find(int x){ if(x==bin[x...
阅读全文
摘要:还是bfs,主要考虑剪枝,数组标记走过时炸弹剩余的时间,以及炸弹延时后将4变成1#include#include#include#includeusing namespace std;struct node{ int x,y,s,w;}t,t0;int n,m,g[10][10...
阅读全文
摘要:网上查了标记路径的方法之后就是一道普通的搜索题了,自己还是想不到关键的,努力!#include #include #include #include #include #include #include #include #include #include #include #inc...
阅读全文
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;int m...
阅读全文
摘要:#include#include#include#include;#includeusing namespace std;int main(){ int n,i,j,k,tot,cas=0,flag,m; double t,g[50][50]; char s[50]...
阅读全文
摘要:输入当中有起点和终点相同的,所以使用map时要注意#include #include #include #include #include #include #include #include #include #include #include #include #include ...
阅读全文
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;const...
阅读全文
摘要:主要是怎么解决超时,实际上不用floyd算法更好,但是老师拉的是floyd算法专题…… 所以只好剪枝……#include #include #include #include #include #include #include #include #include #include ...
阅读全文
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;int m...
阅读全文
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;int m...
阅读全文
摘要:三层暴力都错了好久…… 将无向图当成了有向图所以悲剧了……#include #include #include #include #include #include #include #include #include #include #include #include #incl...
阅读全文
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;const...
阅读全文
摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;const...
阅读全文
摘要:1.可能问的时候是同一点例如1 1 2.每两点之间可能有不同距离,例1 2 3 和1 2 4#include #include #include #include #include #include #include #include #include #include #inclu...
阅读全文
摘要:#include #include #include #include #include #include #include#include #include #include #include #include #include using namespace std;int f,...
阅读全文
摘要:根据姥姥提示,入栈顺序就是先序遍历,出栈顺序就是中序遍历。然后在用solve函数进行递归分治来求出后序遍历的结果。#include #include #include #include #include #include #include #include #include#incl...
阅读全文
摘要:A Find the Spy/* ***********************************************Author :xryzEmail :523689985@qq.comCreated Time :2015/4/12 13:...
阅读全文
摘要:#include#include#include#include#include#includeusing namespace std;const int N=100000+5;int bin[N],ans[N];mapm;int Find(int x){ while(bin[...
阅读全文
摘要:#includeint main(){ int i,m,x,y,n,ans,num; while(~scanf("%d%d",&n,&m)&&n&&m) { ans=0; for(i=1; i=m) break; } ...
阅读全文
摘要:#include#includeint main(){ int n,i,ans,len,tmp,d,t,m; while(~scanf("%d",&n)) { ans=0; for(i=0;i0) { ...
阅读全文
摘要:#include#include#includeusing namespace std;int main(){ int a[20],b[20],i,len1,len2,flag,j,t,d; char s[25],s2[25]; while(~scanf("%s",...
阅读全文
摘要:本题测试点5是从小岛范围内可以直接跳到岸边…… 测试点4是验证步数第一跳最小的情况,刚开始没有考虑回溯,所以错了……#include #include #include #include #include #include #include #include #include #in...
阅读全文
摘要:就是按照贪心的思路来,分成第一张牌翻不翻来考虑,接下来每次搜索看前面一张是0还是1,1的话就翻,最后看一下最后一张牌的状态。#include#include#includeusing namespace std;const int inf=1<<30;int ans,len,a[25...
阅读全文
摘要:#includeconst int _=100000+5;int bin[_],vis[_];int _find(int x){ while(x!=bin[x]) x=bin[x]; return x;}void intt(){ int i; for(i=1;...
阅读全文
摘要:二分查找#include#include#includedouble pi=2*acos(-1.0);double ex=1e-5;int main(){ int T,n,f,_,cnt,flag,i; double a[10000+24], Max,Min,Mid; ...
阅读全文
摘要:数据有1万个,邻接矩阵挂了,所以只能套邻接表。第一次直接是套的模板,搜索过程也是参考教材指导书上的实现。#include#include#include#include#includeusing namespace std;#define MaxVertexNum 1024typ...
阅读全文
摘要:/* 图的邻接矩阵表示法(C语言实现) */#define MaxVertexNum 100 /* 最大顶点数设为100 */#define INFINITY 65535 /* ∞设为双字节无符号整数的最大值65535*/typedef char Ver...
阅读全文
摘要:dfs和bfs综合利用,栈和队列也是综合利用,比较考验编程基本功,主要是自己交一次就对了,好高兴。#include#include#include#include#includeusing namespace std;int gra[15][15],vis[15],ans[15],n...
阅读全文
摘要:突然发现堆排序不会了//25ms,stl自带,干过他真难#include#includeusing namespace std;int main(){ int a[100000+5],i,n; while(~scanf("%d",&n)) { for(...
阅读全文
摘要:/* ***********************************************Author :xryzEmail :523689985@qq.comCreated Time :5-3 19:23:22File Name :...
阅读全文
摘要:#includestruct node{ int parent; int up; int all;} n[30000+5];int Find(int x){ if(x!=n[x].parent) { int t=Find(n[x].pare...
阅读全文
摘要:int find(int x) { if(fa[x] == x) return x; fa[x] = find(fa[x]); return fa[x];}void unio(int x, int y) { int fx = fin...
阅读全文
摘要:#includeint bin[1024];int findx(int x){ while(bin[x]!=x) x=bin[x]; return x;}void mergeab(int x,int y){ int fx,fy; fx=findx...
阅读全文
摘要:#includeint bin[1024];int findx(int x){ while(bin[x]!=x) x=bin[x]; return x;}void mergeab(int x,int y){ int fx,fy; fx=findx...
阅读全文
摘要:hljs perl">#include#includeusing namespace std;int flag,t,n,a[20],use[20],ans[20];bool cmp(int x,int y){ return x>y;}void dfs(int sum,int ...
阅读全文
摘要:#include#include#includeusing namespace std;int mp[25][25],vis[25],ans[25],sum;void dfs(int now,int cnt){ //printf(" %d\n",ans[0]); int ...
阅读全文
摘要:#include#include#include#include#includeusing namespace std;double y;double fcn(double x){ double t=8*x*x*x*x+7*x*x*x+2*x*x+3*x+6-y; ret...
阅读全文
摘要:刚开始按一般搜索写一直错,没有想明白怎么回事。搜了一下其他人的思路才明白,本题有杀死守卫的时间,所以bfs搜索出来路径最短的不一定是时间最短的,所以使用了优先队列让他自己在队列里面排序解决。还有自己刚开始还将路变成了墙,现在想来也是错的,主要都是要杀人。 或者考虑一直搜索,每次将结果...
阅读全文
摘要:typedef long long ll; //通过这里调整值的范围const int N=1024;int a[N];struct Tree{ int left,right; //区间的端点 ll sum; //视题目要求而定}tree[4*N+10];//...
阅读全文
摘要:/* ***********************************************Author :xryzEmail :523689985@qq.comCreated Time :4-30 21:25:25File Name ...
阅读全文