2013年3月21日

NYOJ 576 集齐卡片赢大奖(一)

摘要: 1 #include<stdio.h> 2 #include<math.h> 3 int main() 4 { 5 double ans; 6 int n; 7 while(~scanf("%d",&n)){ 8 if(n<10000){ 9 ans=0.0;10 for(int i=1;i<=n;i++)11 ans+=1.0*n/i;12 printf("%lld\n",(long long)(ans+0.5));13 }else... 阅读全文

posted @ 2013-03-21 20:49 小花熊 阅读(252) 评论(0) 推荐(0) 编辑

NYOJ 528 找球号(三)

摘要: 1 #include<stdio.h> 2 int main() 3 { 4 int i,res,n; 5 while(~scanf("%d",&n)){ 6 res=0; 7 while(n--){ 8 scanf("%d",&i); 9 res^=i;10 }11 printf("%d\n",res);12 }13 return 0;14 } 我们先了解一下位异或的运算法则吧:1、a^b = b^a。2、(a^b)^c = a^(b^c)。3、a... 阅读全文

posted @ 2013-03-21 16:43 小花熊 阅读(240) 评论(0) 推荐(0) 编辑

NYOJ 138 找球号(二)

摘要: 1 #include<stdio.h> 2 #include<memory.h> 3 #define N 1000010 4 #define MOD 110023 5 int ind,key[N],next[N],order[N];//key[i]保存第i个小球的编号, 6 //next[]保存当出现冲突时同一余数对应的多个编号的值 7 //order[i]保存余数为i时对应的球的序号,进而找到其编号 8 void add(int n) 9 {10 int remainder;11 ... 阅读全文

posted @ 2013-03-21 15:58 小花熊 阅读(213) 评论(0) 推荐(0) 编辑

NYOJ 228 士兵杀敌(五)

摘要: 1 #include<stdio.h> 2 int m[1000010]; 3 int main() 4 { 5 int i,n,c,q,from,to,inc; 6 scanf("%d%d%d",&n,&c,&q); 7 for(i=0;i<c;i++){ 8 scanf("%d%d%d",&from,&to,&inc); 9 m[from]+=inc; //从from-n都加上inc 10 m[to+1]-=inc; //从to+1-n都减去inc 11 }12 for(i=0;i&l 阅读全文

posted @ 2013-03-21 09:06 小花熊 阅读(178) 评论(0) 推荐(0) 编辑

导航