版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013383042/article/details/53340596
把这个问题想成8个小朋友手拉手成一个圈arr[0]到arr[7],从第一个小朋友开始,每数到3有一个小朋友出队arr=0,外面的for循环7次,给7个小朋友赋值为0,表示出队,最后剩下的那个就是LuckNumber了。
class luckNum
{
public static void main(String[] args)
{
int[] arr = {1,2,3,4,5,6,7,8};
int pos = -1;
for(int x=0;x<arr.length - 1; x++)
{
for(int y=0; y<3;y++)
{
pos++;
if(pos==arr.length)
pos=0;
while(arr[pos]==0)
{
pos++;
if(pos==arr.length)
pos=0;
}
}
arr[pos] = 0;
}
for(int x=0; x<arr.length; x++)
{
if(arr[x]!=0)
{
System.out.println("The luck num is " + arr[x]);
break;
}
}
}
}
原创:http://blog.csdn.net/u013383042/article/details/53340596