symons

___________每一天都是幸福的!!

  博客园  ::  :: 新随笔  ::  :: 订阅 订阅  :: 管理
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 22 下一页

2013年11月8日

摘要: #include #include #include #include using namespace std;int m;struct node{ char name[100]; int time,acno;}p[100];bool cmp(node a,node b){ if(a.acno==b.acno&&a.time==b.time) return (strcmp(b.name,a.name)>0); else if(a.acno==b.acno) return a.timeb.acno;}int change(char tmp[]){ int sum,... 阅读全文
posted @ 2013-11-08 16:18 symons 阅读(332) 评论(0) 推荐(0)

摘要: 刚开始看这题,感觉是DP什么的 ,后来我发现,只要找到中最小值,就可以啦,哈哈。假如用x1把0-100分割。则0-x1-100 ===> x1^2+(100-x1)^2跟0-100 ===> 100^2比较,可以很容易的比较出来,大家可以用构造面积法证明一定是100^2比较大,无论将其分成多少段。#include int main(){ int n,m,min,t,tmp,i; scanf("%d",&t); while(t--){ scanf("%d%d",&n,&m); min=1000000; for(i=0;i 阅读全文
posted @ 2013-11-08 14:44 symons 阅读(171) 评论(0) 推荐(0)

2013年11月7日

摘要: 注意是两位数,必须输出01,02,03,这种#include int main(){ int begin,end; int i; int res[110]; int cnt; int sign; while(~scanf("%d%d",&begin,&sign)){ if(begin==0&&sign==0) break; end=(begin+1)*100-1; begin*=100; cnt=0; for(i=begin;i<=end;++i){ if(i%sig... 阅读全文
posted @ 2013-11-07 22:40 symons 阅读(175) 评论(0) 推荐(0)

摘要: #include int main(){ __int64 h[100],l[100]; int i,j; int n; while(~scanf("%d",&n)&&n!=-1){ h[0]=1; l[0]=0; for(i=1;i<=n;++i){ h[i]=h[i-1]*3+l[i-1]*2; l[i]=h[i-1]*1+l[i-1]*1; } printf("%I64d, %I64d\n",h[n],l[n]); } return 0;} 阅读全文
posted @ 2013-11-07 22:32 symons 阅读(146) 评论(0) 推荐(0)

摘要: #include int sum1(int n,int sign){ int sum=0; while(n){ sum+=n%sign; n/=sign; } return sum;}int main(){ int n; while(~scanf("%d",&n)&&n){ //printf("10=%d,16=%d,2=%d\n",sum1(n,10),sum1(n,16),sum1(n,2)); if( sum1(n,10)==sum1(n,16) && sum1(n,16)==sum1(n,12)... 阅读全文
posted @ 2013-11-07 22:24 symons 阅读(168) 评论(0) 推荐(0)

摘要: 这题还是递推,只能在后面加E,O,F三个字母,若在f(n-1)后加,E,F,则新增了2*f(n-1)个序列若加 O ,则只能在f(n-1)种尾部为E,F的序列后加,回到上一种情况,即f(n-2)*2把上面两种情况合起来就变成了 f(n)=2*f(n-1)+2*f(n-2)。#include int main(){ __int64 num[40]; int i,n; num[1]=3; num[2]=8; for(i=3;i<40;++i){ num[i]=2*(num[i-1]+num[i-2]); } while(~scanf("%d"... 阅读全文
posted @ 2013-11-07 20:35 symons 阅读(247) 评论(0) 推荐(0)

摘要: #include #include int main(){ int cnt,i,j,k; char str[1000+100],tmp[1000+10]; int strl,tmpl; while(~scanf("%s",str)){ if(!strcmp(str,"#")) break; scanf("%s",tmp); cnt=0; strl=strlen(str); tmpl=strlen(tmp); for(i=0;i=strl) break; if(s... 阅读全文
posted @ 2013-11-07 19:16 symons 阅读(145) 评论(0) 推荐(0)

摘要: 老题目了#include int main(){ int gird[110][110]; int i,j,max; int c,n; scanf("%d",&c); while(c--){ scanf("%d",&n); for(i=0;i=0;--i){ for(j=0;jgird[i+1][j+1]?gird[i+1][j]:gird[i+1][j+1] ); } } printf("%d\n",gird[0][0]); } return 0;} 阅读全文
posted @ 2013-11-07 19:08 symons 阅读(135) 评论(0) 推荐(0)

摘要: f(n)=f(n-1)+2*f(n-2)#include int main(){ __int64 num[55]; int i,n; num[1]=3;num[2]=6;num[3]=6; for(i=4;i<=50;++i){ num[i]=num[i-2]*2+num[i-1]; } while(~scanf("%d",&n)){ printf("%I64d\n",num[n]); } return 0;} 阅读全文
posted @ 2013-11-07 14:24 symons 阅读(140) 评论(0) 推荐(0)

摘要: 二进制转换#include void change(int n){ int num[100]; int cnt=0; while(n){ num[cnt]=n%2; n/=2; cnt++; } cnt--; while(cnt>=0){ printf("%d",num[cnt]); cnt--; } printf("\n"); return ;}int main(){ int n; while(~scanf("%d",&n)){ change(... 阅读全文
posted @ 2013-11-07 13:45 symons 阅读(188) 评论(0) 推荐(0)

上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 22 下一页