500个小孩 围一圈,数到3退出,问最后剩下的小孩,原来是多少号

来源:互联网 发布:面板数据竖着是时间 编辑:程序博客网 时间:2024/05/01 16:01
//这是个经典的面试题,原来学C的时候,就搞不清怎么写,现在看了马士兵的视频,反倒先用java写了这个算法//理解以后再用C写写public class Count3Quit{public static void main(String[] args){boolean[] arr = new boolean[500];for(int i=0; i<arr.length; i++)arr[i] = true;int index = 0;int countNum = 0;int left = arr.length;while(left > 1){if(arr[index] == true)countNum++;if(countNum == 3){arr[index] = false;countNum = 0;left--;}index++;//index的值要往后计数if(index == arr.length)index=0;}for(int i=0;i<arr.length;i++){if(arr[i] == true)System.out.println(i);}}}

原创粉丝点击