n Люди ждут, чтобы войти в комнату с пронумерованными переключателями от 1 до n.
Первый, кто входит в комнату, поднимает все выключатели, и все огни включены. Второй опускает каждый второй переключатель и, таким образом, выключает все двойные лампочки. Третий изменяет состояние всех переключателей, которые делятся на 3 (если индикатор включен, он выключается или выключается - включается)
Четвертый меняет все переключатели, которые делятся на 4 и т. Д.
Какие лампочки остались в комнате после того, как последний человек вышел из комнаты
Мне нужно получить два числа от пользователя и запустить описанный алгоритм и напечатать одинаковое количество лампочек на одной строке.
Пример вывода
enter number of light bulbs - 16
enter number of people - 3
1 5 6 7 11 12 13
мой код такой, но я не знаю, что делать
я делаю разные классы, которые я создал, чтобы взять луковичный сканер.
int people;
int bulbs;
bulbs= ("Please enter a bulbs: ");
people= ("Please enter a people of rows : ");
boolean [] room=new boolean[bulbs];
for(int i=1;i<=people;i++)
{
boolean counter=true;
for(int j=1;j<bulbs;j++)
{
if(j%i==0){
if(room[j]=true) {
room[j]=false;
counter=room[j];
}
if(room[j]=false) {
room[j]=true;
counter=room[j];
if(i==1) {
room[j]=true;
counter=room[j];
}
}
if (counter=true)
{
System.out.println("Light bulb " + j + " will be on");
}
}
} }