解题思路:
注意事项:
参考代码:
#include<stdio.h>
int main()
{
int n,m;
while(scanf("%d%d",&n,&m)!=EOF){
int x[n],i;
x[0]=0;
for(i=1;i<=n;i++)
x[i]=1;
int j=0,l=0,k=0,flag=1,q;
while(flag){
for(i=1;i<=n;i++){
if(x[i]!=0)
j++;
if(j%m==0&&j!=0) //将m位数清0
x[i]=0;
for(q=1;q<=n;q++)//计算数组和是否为1,1代表最后一个幸存数
x[0]+=x[q];
if(x[0]==1){ //找出最后一个幸存数的位置并打印
i=1;
while(!(x[i++]));
printf("%d\n",i-=1);
flag=0;
break;
}
x[0]=0;
}
}
}
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:569 |
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:516 |
川哥的吩咐 (C++代码)浏览:1016 |
简单的a+b (C语言代码)浏览:530 |
C语言程序设计教程(第三版)课后习题6.11 (C语言代码)浏览:2081 |
【排队买票】 (C语言代码)浏览:900 |
WU-蓝桥杯算法提高VIP-交换Easy (C++代码)浏览:1119 |
关于C语言变量位置的问题浏览:273 |
1025题解浏览:738 |
2003年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:683 |