Решить на любом языке программирования. имеется ряд из n лампочек, которые пронумерованы от 1 до n. изначально ни одна из лампочек не горит. далее происходит k последовательных линейных инверсий этого ряда ламп. под линейной инверсией понимается инверсия каждой p-й лампочки в ряде. например, если p=3, то произойдет инверсия 3й, 6й, 9й и т.д. лампочек.требуется определить: сколько горящих лампочек останется после реализации всех заданных линейных инверсий? входные данные: в первой строке входного файла input.txt заданны числа n и k – число лампочек и число линейных инверсий. вторая строка состоит из k целых чисел pi, период данных инверсий. (1 < = n < = 109, 1< =k< =100, 1 < = pi < = 50) выходные данные в выходной файл output.txt следует вывести ответ на .

kiakev kiakev    2   25.05.2019 05:30    10

Ответы
lina16mgstar lina16mgstar  21.06.2020 05:45
Package test;
import java.io.*;
public class Test {    public static void main(String[] args) throws IOException {         BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
String line = in.readLine();
int N = Integer.parseInt(line);
boolean[] mas = new boolean[N];        
String line2 = in.readLine();       
int K = Integer.parseInt(line2);        
for(int x = 0; x < N; x++){mas[x]=false;}        
for(int z = 0; z < K; z++){String line1 = in.readLine();
            int P = Integer.parseInt(line1);
            for(int i = P - 1; i < N; i = i + P){if (mas[i] == false) {mas[i]=true;}               
                                                         else mas[i] = false;
            }       
}        
for(int l = 0; l < N; l++){if(mas[l]==true){System.out.println("+");}
else System.out.println("-");        }    }}
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика