2013.7.14DAY1
上午睡到8点过被老妈一个电话吵醒了。。。。
然后就开始学炖汤~自己炒了个藤藤菜~好吃。。。
下午用冰格冻了冰块,去超市买了牛奶这些,准备学着做冰品。。。为了未来的女朋友嘛~
然后卧室开空调看了会书。。然后我妈就进来说了一句。。。你现在怎么这么爱学习了。。。。怎么这么。。。这么。。。么。。。。
我以前不爱学习吗?。。。。好吧。。。只是LOL太累的了。。晚上欺负一把小学生就够了。。。。
或者是我成熟了?总觉得要多学点以后好找钱。。。而且这也是为我的梦想奠定个小基础~
好吧就写这么多 DAY1
虐了一道猴子选大王。。。其实就是约瑟夫。。找点自信。。
Description
有m个猴子围成一圈,按顺时针编号,分别为1到m。现打算从中选出一个大王。经过协商,决定选大王的规则如下:从第一个开始顺时针报数,报到n的猴子出圈,紧接着从下一个又从1顺时针循环报数,...,如此下去,最后剩下来的就是大王。
Input
第一行是一个正整数T表示测试数据的组数。下面共有T行,每行两个整数m和n,用一个空格隔开,分别表示猴子的个数和报数n。1<=m<=100,1<=n<=200。
Output
每组数据对应有一个输出,表示大王的编号。
Sample Input
1 3 2
Sample Output
3
1 #include<stdio.h> 2 int main() 3 { 4 int mon[200]; 5 int n,m,T,i,j,count,sp; 6 scanf("%d",&T); 7 for (i=1;i<=T;i++) 8 { 9 scanf("%d %d",&m,&n); 10 for (j=1;j<=m;j++) 11 mon[j]=1; 12 mon[0]=0; 13 mon[j]=0; 14 sp=1; 15 for (j=1;j<m;j++) 16 { 17 count=0; 18 while (count<n) 19 { 20 if (!mon[sp]) 21 {sp++; 22 if (sp==m+1) 23 sp=1; 24 continue;} 25 count++; 26 if (count<n) 27 {sp++; 28 if (sp==m+1) 29 sp=1; 30 } 31 } 32 mon[sp]=0; 33 sp++; 34 if (sp==m+1) 35 sp=1; 36 } 37 for (j=1;j<=m;j++) 38 if (mon[j]) 39 printf("%d\n",j); 40 } 41 return 0; 42 }