josephus问题:几个小孩围成一圈,从任意一个小孩间隔m顺时针方向数起,每数到第m个小孩时,该小孩就离开。最后一个剩下的就为胜利者。第几个为胜利者?
struct jose void mian() jose *pJose=new jose[numOfBoys]; int itemsInLine=0; for(int i=1;i<=numOfBoys;i++) if(itemsInLine++%10==0) itemsInLine=0; int numOfCount; jose *pivot; while(pCurrent->next!=pCurrent) if(itemsInLine++%10==0) cout<<endl delete []pJose; } |