#include<iostream>
using namespace std;
int main(){
int N,p,i=0,j=0,a[3000]={0},q=0;
cin>>N>>p;
while(j!=N){
i++;
if(i>N){
i=1;
}
if(a[i]==0){
q++;
if(q==p)
{
a[i]=1;
j++;
cout<<i<<" ";
q=0;
}
}
}
return 0;
}
```c++
能输出正确结果,但在pta上执行是多种错误,求解
约瑟夫环能执行但在pta上过不去
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- qzjhjxj 2021-08-14 23:45关注
修改如下,供参考对照:
#include<iostream> using namespace std; int main(){ int N,p,i=0,j=0,a[3000]={0},q=0; cin>>N>>p; while(j!=N){ if(a[i]==0){ q++; if(q==p) { if(j == 0) cout<<i+1; else cout<<" "<<i+1; a[i]=1; j++; q=0; } } i++; if(i>=N) i=0; } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥30 c#打开word开启修订并实时显示批注
- ¥15 如何解决ldsc的这条报错/index error
- ¥15 VS2022+WDK驱动开发环境
- ¥30 关于#java#的问题,请各位专家解答!
- ¥30 vue+element根据数据循环生成多个table,如何实现最后一列 平均分合并
- ¥20 pcf8563时钟芯片不启振
- ¥20 pip2.40更新pip2.43时报错
- ¥15 换yum源但仍然用不了httpd
- ¥50 C# 使用DEVMOD设置打印机首选项
- ¥15 麒麟V10 arm安装gdal