There is a room with 1000 light switches, numbered 1, 2, 3,
4, ... 1000, all turned off.
Outside the room there are 1000 men, numbered man1, man2,
...man 1000
In order, each man walks into the room and changes the
position of each switch that is a multiple of his number.
That is: man1 flips every switch
man2 flips switches 2, 4, 6, 8 ....1000
man3 flips switches 3, 6, 9, ..... 999
.....
Man 1000 flips switch 1000
After all 1000 men are done, how many switches are on?
Answers were Sorted based on User's Feedback
Answer / rams
The answer is 31. All the perfect squares are on. ie 1,4,9,16,25,36....961(31*31).
Here is the logic.
The first person switches on every thing.
The multiple factors come in pairs, so the changes done by multiple factors has no effect. So all the Switches are on.
The switches are turned off by the person with same number.
The square root switches on the lights for the perfect squares.
| Is This Answer Correct ? | 9 Yes | 0 No |
Answer / orenise
The above code does not work, Please ignore it. I will Post
the answer, when i got the correct Code.
| Is This Answer Correct ? | 2 Yes | 0 No |
Answer / orenise
The answer is 31. here is the code...
private static void Q1() {
int firstMan = 1;
int lastMan = 1000;
int numOfSwitches = 1000;
boolean[] switches = new boolean[numOfSwitches + 1];
// Print the switches initial state.
System.out.println("switches");
int col = 0;
for (int j = 0; j < switches.length; j++) {
System.out.print("[" + switches[j] + "], ");
if (col >= 10) {
System.out.println();
col = 0;
}
col++;
}
for (int currentMan = firstMan; currentMan <= lastMan;
currentMan++) {
for (int switchNum = currentMan; switchNum <=
lastMan; switchNum++) {
int divids = switchNum % currentMan;
if (divids == 0) {
switches[switchNum] = !switches[switchNum];
}
}
}
// Print the switches final state.
System.out.println("switches");
int col2 = 0, sum = 0;
for (int j = 0; j < switches.length; j++) {
System.out.print("[" + switches[j] + "], ");
if (switches[j]) {
sum++;
}
if (col2 >= 10) {
System.out.println();
col2 = 0;
}
col2++;
}
System.out.println(" sum = " + sum);
}
| Is This Answer Correct ? | 3 Yes | 2 No |
In project we have Documentation phase also,in that what is micro and macro designing?
in cobol,wat is the difference in using 'set index in occurs clause' ....and 'occurs depending-on clause'
How many forms can you create in a Visual Basic 6 Standard EXE project? Is there any limit on that?
how many logical drive we can form to physical device in our computer?
Which CRM is better to opt, Sebiel CRM or Salesforce CRM or sap CRM? which institute is best one in hyderabad
19. Given a system that is described with the following equation, X=A+(B.(A̅+C)+C)+A.B.(D̅+E̅) a) Simplify the equation using Boolean Algebra. b) Implement the original and then the simplified equation with a digital circuit. c) Implement the original and then the simplified equation in ladder logic.
difference between mantis and other tools?
What are the other ways to create an object with out calling new keyword in java?
What is the difference between an EXE and a DLL?
3 Answers ABC, Hykin Solutions, Infoedge, Infosys, Polaris,
Wats the name of the first os
hii I inntrested abt scjp certification but i dont knw abt scjp plz send details abt scjp exam and syllabus.
what is static objects in java