猿问

一个java入门编程小问题?

publicclassCount3Quit{
publicstaticvoidmain(String[]args){
boolean[]arr;
arr=newboolean[500];
for(inti=0;iarr[i]=true;
}
intindex=0;
intnow=0;
intleft=arr.length;
while(left>1){
if(arr[index]=true){
now=now+1;
if(now==3){
arr[index]=false;
left=left-1;
now=0;
}
}
index=index+1;
if(index==arr.length){
index=0;
}
}
for(inti=0;iif(arr[i]=true){
System.out.println(i);
}
}
}
}
大侠们,自学java,又碰到一个不知道咋错的了,麻烦各位大神了。。。。
这个结果就是打印出了0到499
题目就是500个人围成一圈,从某一个人开始数,数到第三个人让他离开这个圈,然后从下一个人继续数,同样是第三个人离开,这样一直下去,直到剩下一个人,问这个人在第几个位置(相对于开始数的起点)?
慕森卡
浏览 360回答 2
2回答

慕容3067478

你犯了一个基本的错误if(arr[index]=true){这里应该是==没有试你的程序,不知道还有没有别的问题

宝慕林4294392

对应的问题,有对应的数据结构,这个题目出现在很多的招聘面试题目中,是一个经典的应用循环链表的示例。恰好有时间,写了一下代码。废话不多说,上代码,有问题,欢迎讨论:publicclassthirdPersonOutGame{publicstaticvoidmain(String[]args){pointTheLastPerson(init(3),true);}staticPersoninit(inttotalPersonNum){if(totalPersonNum
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答