一道逻辑题 房间里有100盏电灯

一道逻辑题 房间里有100盏电灯

一道挺有意思的逻辑题

房间里有100盏电灯,网站空间,编号为1,2,3……100,每盏灯上有一个按钮,初始时灯全都是关的。 编好号的100位同学由房间外依次走进去,将自己编号的倍数的灯的按钮全部按一次,例如第一位同学把编号是1的倍数的灯的按钮按一下(此时100盏灯全亮),第二位同学把编号是2的倍数的灯的按钮按一下(此时只有50盏灯亮着,50盏被这个人按灭了)……第100位同学把编号是100的倍数的灯(即编号为100的灯)的按钮按一下,美国空间,请问依次走完后,还有多少盏灯亮着?

从要做淡定姐的博客上看到的这个逻辑题,服务器空间,感觉很有意思,就说那程序完成下,本来一个很简单的东西结果用了半个多小时才写出来,真是惭愧。。。

public class test { main(String args[]) {int[] lights = new int[100];int[] users = new int[100];int[] result = new int[100];for (int i = 1; i <= 100; i++) {lights[i – 1] = i;users[i – 1] = i;}for (int i = 0; i < 100; i++) {int user = users[i];for (int j = 0; j < 100; j++) {int light = lights[j];if (light % user == 0) {if (result[j] == 0) {result[j] = 1;} else {result[j] = 0;}}}for (int e = 0; e < 100; e++) {if (result[e] == 1) {System.out.print((e + 1) + “-“);}}System.out.println();}}}

1-4-9-16-25-36-49-64-81-100-

应该还有更简单的算法

posted on

宁愿停歇在你门前的那棵树上,看着你,守护你。

一道逻辑题 房间里有100盏电灯

相关文章:

你感兴趣的文章:

标签云: