灭灯开灯

有100盏灯,只有开关两种状态。开始都是关着的状态,然后有100个人,第一个人把100盏灯的开关都拨一遍,第二个人,拨第2,4,6,8...盏灯的开关,第三个人拨第3,6,9,12...盏灯的开关,后面的人依此类推,问最后哪些灯是亮着的,哪些灯是灭了的。

public class Main {
    public static void main(String[] args) {
        int[] bull=new int[101];
		for(int i=1;i<=100;i++){
			bull[i]=1;
		}
		for(int i=2;i<=100;i++){
			int k=1;
			for(int j=i;j<=100;){
				if(bull[j]==1) bull[j]=0;
				else bull[j]=1;
				k++;
				j=i*k;
			}
		}
		for(int i=1;i<=100;i++){
			if(bull[i]==1){
				System.out.println(i);
			} 
		}
    }
}

猜你喜欢

转载自blog.csdn.net/h2498864708/article/details/106969486
今日推荐