адильчичек
17.05.2020 04:29

Фишки
Дана полоска из клеток, пронумерованных от 1 до N слева направо. Разрешено:

Снимать или ставить фишку на клетку с номером 1.
Ставить фишку на клетку, следующую за самой левой из установленных фишек (правее неё), если она пуста.
Удалять фишку на клетке, следующей за самой левой из установленных фишек (правее неё), если она занята.
Изначально полоска пуста. Нужно разместить фишки во всех клетках.

Входные данные

Программа получает на вход количество клеток в полоске N(1≤N≤10).

Выходные данные

Программа должна вывести последовательность номеров клеток, с которыми совершается действие. Если фишка снимается, то номер клетки должен выводиться со знаком минус. Количество действий не должно превышать 104. Если существует несколько возможных решений задачи, то разрешается вывести любое.

Примеры
Ввод
3
Вывод
1 2 -1 3 1

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
serega7315
02.11.2022 11:33

1 программа:

var a, sum:integer;

begin

writeln('Введите числа (цифра 0 - выход из программы)');

sum:= 0;

readln(a);

while(a <> 0) do begin

sum:= sum + a;

readln(a);

end;

writeln('Сумма чисел = ', sum);

end.

2 программа:

var a, sum:integer;

begin

a:=0;

while(a <= 100) do begin

if (a mod 2 = 0) then

 sum:= sum + a;

a:= a + 1;

end;

writeln('Сумма четных чисел = ', sum);

end.

3 программа:

var a, i, N:integer;

begin

writeln('Введите N');

readln(N);

a:=1;

for i:=1 to N do begin

 write(a*a, ' ');

 a:= a + 1;

end;

end.

0,0(0 оценок)
Ответ:
davaispi
02.11.2022 11:33

1 программа:

var a, sum:integer;

begin

writeln('Введите числа (цифра 0 - выход из программы)');

sum:= 0;

readln(a);

while(a <> 0) do begin

sum:= sum + a;

readln(a);

end;

writeln('Сумма чисел = ', sum);

end.

2 программа:

var a, sum:integer;

begin

a:=0;

while(a <= 100) do begin

if (a mod 2 = 0) then

 sum:= sum + a;

a:= a + 1;

end;

writeln('Сумма четных чисел = ', sum);

end.

3 программа:

var a, i, N:integer;

begin

writeln('Введите N');

readln(N);

a:=1;

for i:=1 to N do begin

 write(a*a, ' ');

 a:= a + 1;

end;

end.

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота