灯泡编程题-java
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了灯泡编程题-java相关的知识,希望对你有一定的参考价值。
现在有100个灯泡,每个灯泡都是关着的,灯泡排序为1~100,接着将2的倍数的灯泡开关按一下,然后将3的倍数的灯泡开关按一下……直到将N的倍数的灯泡开关按一下,最后统计灯泡亮着的数目。
算法思路:
1.将灯泡数存入数组
2.数组都默认值为0
3.将N的倍数的灯泡从2~N改变一下数值,若灯泡本身为0,则赋值1,否则赋值为0
class Light{ public static void main(String[] args){ int[] nums = new int[100]; int index = 0; int N = 2; for (int i=0;i<100;i++){ nums[i] = 0; } for (int i=2;i<=N;i++){ for (int j=1;j<100;j++){ index = j+1; if ( index>=i&&index%i==0){ if (nums[j]==0){nums[j]=1;} else {nums[i]=0;} } } } int count = 0; for (int i=0;i<100;i++){ if (nums[i]==1){count++;} } System.out.println("result="+count); } }
以上是关于灯泡编程题-java的主要内容,如果未能解决你的问题,请参考以下文章