//1333#include iostreamusing namespace std;int blah[1000050];int main() { int a,n; while(cinan){ int x=1; blah[1]=a; int i=1,j=1; while(true){ int b1=2*blah[i]+1; int b2=3*blah[j]+1; if(b1b2){ blah[++x]=b1; i++; } else if(b2b1){ blah[++x]=b...
#include bits/stdc++.husing namespace std;int n,k;int p[105]={};int a,b;int z=0;int main(){ cinnk; for(int i=0;ik;i++){ cinab; if(p[a]==0p[b]==0){ z++; p[a]=p[b]=z; } else{ if(p[a]!=0) p[b]=p[a]; else p[a]=p[b]; } } int jtrs[105]={}; int an...
输入:n,m,k,人数,死亡数字,存活数量 输出:将存活的人以编号从小到大输出 输入:60 17 5 输出:7 9 10 45 58 #include iostream #include queue #include algorithm using namespace std; queueint q;//创建一个...
#include iostream#include queueusing namespace std;queueint q;//创建一个约瑟夫队列int main(){ int N,M; cinNM; for(int i=1;i=N;i++) q.push(i); int c=1; while(!q.empty()){ if(c==M){ coutq.front()" "; q.pop(); c=1; } else{ q.push(q.fr...
#include iostream#include queueusing namespace std;queueint q;//创建一个约瑟夫队列int main(){ int N,M[1000005]={0}; cinN; for(int i=1;i=N;i++) cinM[i];//死亡数字 for(int i=1;i=N;i++) q.push(i);//猴子编号 int c=1,X=M[q.front...