ЗАДАЧИ
problems.ru
О проекте | Об авторах | Справочник
Каталог по темам | по источникам |
К задаче N

Проект МЦНМО
при участии
школы 57
Фильтр
Сложность с по   Класс с по  
Выбрана 1 задача
Версия для печати
Убрать все задачи

Дан массив. Требуется удалить из него элемент, стоящий на месте номер B,
сдвинув все последующие элементы влево.

Входные данные
Во входном файле записано сначала число N - количество элементов массива
(2<=N<=100), затем N чисел из диапазона Integer - элементы массива,
а затем число B (1<=B<=N).

Выходные данные
В выходной файл выведите N-1 число - элементы массива с удаленным B-м элементом.

Примечание
Вы должны удалить элемент непосредственно из массива, а не сделать
вид при выводе данных, что у вас такого элемента нет. Также вы не
должны для этого заводить в программе дополнительный массив.

То есть ввод данных осуществляется следующим фрагментом:
read(fi,n);
for i:=1 to n do read(fi,a[i]);
read(fi,b);

А вывод - следующим:
for i:=1 to n-1 do write(fo,a[i],' ');

Необходимые фрагменты вы можете найти в файле P128.PAS

Пример входного файла
5
1 3 5 6 7
2

Пример выходного файла
1 5 6 7

Текст программы P128.PAS

const nmax=100;

var a:array[1..nmax] of integer;
    n:integer;
    i:integer;
    b:integer;
    fi,fo:text;

begin
assign(fi,'input.txt');
reset(fi);
assign(fo,'output.txt');
rewrite(fo);

read(fi,n);
for i:=1 to n do read(fi,a[i]);
read(fi,b);

{Вы должны писать здесь}

for i:=1 to n-1 do write(fo,a[i],' ');
close(fi);
close(fo);
end.

   Решение

Задачи

Страница: << 3 4 5 6 7 8 9 >> [Всего задач: 63]      



Задача 64148  (#127)

Темы:   [ Задачи с целыми числами ]
[ Знакомство с циклами ]
[ Условный оператор ]
Сложность: 2
Классы: 8

Дано N целых чисел. Требуется выбрать из них три таких числа,
произведение которых максимально.

Формат входных данных
Во входном файле записано сначала число N - количество чисел в
последовательности (3<=N<=100). Далее записана сама последовательность:
N целых чисел, по модулю не превышающих 1000.

Формат выходных данных
В выходной файл выведите три искомых числа в любом порядке.
Если существует несколько различных троек чисел, дающих
максимальное произведение, то выведите любую из них.

Пример входного файла
9
3 5 1 7 9 0 9 -3 10

Пример выходного файла
9 10 9

Пример входного файла
3
-5 -300 -12

Пример выходного файла
-5 -300 -12
Прислать комментарий     Решение

Задача 64149  (#128)

Тема:   [ Одномерные массивы ]
Сложность: 2
Классы: 8

Дан массив. Требуется удалить из него элемент, стоящий на месте номер B,
сдвинув все последующие элементы влево.

Входные данные
Во входном файле записано сначала число N - количество элементов массива
(2<=N<=100), затем N чисел из диапазона Integer - элементы массива,
а затем число B (1<=B<=N).

Выходные данные
В выходной файл выведите N-1 число - элементы массива с удаленным B-м элементом.

Примечание
Вы должны удалить элемент непосредственно из массива, а не сделать
вид при выводе данных, что у вас такого элемента нет. Также вы не
должны для этого заводить в программе дополнительный массив.

То есть ввод данных осуществляется следующим фрагментом:
read(fi,n);
for i:=1 to n do read(fi,a[i]);
read(fi,b);

А вывод - следующим:
for i:=1 to n-1 do write(fo,a[i],' ');

Необходимые фрагменты вы можете найти в файле P128.PAS

Пример входного файла
5
1 3 5 6 7
2

Пример выходного файла
1 5 6 7

Текст программы P128.PAS

const nmax=100;

var a:array[1..nmax] of integer;
    n:integer;
    i:integer;
    b:integer;
    fi,fo:text;

begin
assign(fi,'input.txt');
reset(fi);
assign(fo,'output.txt');
rewrite(fo);

read(fi,n);
for i:=1 to n do read(fi,a[i]);
read(fi,b);

{Вы должны писать здесь}

for i:=1 to n-1 do write(fo,a[i],' ');
close(fi);
close(fo);
end.
Прислать комментарий     Решение

Задача 64150  (#129)

Тема:   [ Одномерные массивы ]
Сложность: 2
Классы: 8

Дан массив. Требуется вставить в него на место номер B элемент, равный C,
сдвинув все последующие элементы (включая элемент, стоящий на B-ом месте)
вправо.

Входные данные
Во входном файле записано сначала число N - количество элементов массива
(2<=N<=100), затем N чисел из диапазона Integer - элементы массива,
затем число B (1<=B<=N) и число C (из диапазона Integer).

Выходные данные
В выходной файл выведите N+1 число - элементы массива с вставленным элементом.

Примечание
Вы должны вставить элемент непосредственно в массив, а не сделать
вид при выводе данных, что у вас появился такой элемент. Также вы не
должны для этого заводить в программе дополнительный массив.

То есть ввод данных осуществляется следующим фрагментом:
read(fi,n);
for i:=1 to n do read(fi,a[i]);
read(fi,b,c);

А вывод - следующим:
for i:=1 to n+1 do write(fo,a[i],' ');

Необходимые фрагменты вы можете найти в файле P129.PAS


Пример входного файла
5
1 3 5 6 7
2 10

Пример выходного файла
1 10 3 5 6 7

Текст программы P129.PAS

const nmax=100;

var a:array[1..nmax] of integer;
    n:integer;
    i:integer;
    b,c:integer;
    fi,fo:text;

begin
assign(fi,'input.txt');
reset(fi);
assign(fo,'output.txt');
rewrite(fo);

read(fi,n);
for i:=1 to n do read(fi,a[i]);
read(fi,b,c);

{Вы должны писать здесь}

for i:=1 to n+1 do write(fo,a[i],' ');
close(fi);
close(fo);
end.
Прислать комментарий     Решение

Задача 64151  (#130)

Темы:   [ Задачи с целыми числами ]
[ Знакомство с циклами ]
Сложность: 2
Классы: 8

В начальный момент в i-ом элементе массива записано
число i (всего N элементов).
Каждую секунду числа сдвигаются в следующую ячейку
(из i-ой в i+1-ую), а из N-ой - в первую.
Напечатать состояние массива через T секунд.

Во вхоном файле записаны два числа - N (1<=N<=100) и T (0<=T<=30000).

В выходной файл выведите N чисел - состояние массива через T секунд.

Пример входного файла
5 3 	

Пример выходного файла
3 4 5 1 2
Прислать комментарий     Решение

Задача 64152  (#131)

Темы:   [ Знакомство с циклами ]
[ Задачи с целыми числами ]
Сложность: 2
Классы: 8

Задача Иосифа Флавия

Существует легенда, что Иосиф Флавий - известный историк первого
века - выжил и стал известным благодаря математической одаренности.
В ходе иудейской войны он в составе отряда из 41 иудейского воина
был загнан римлянами в пещеру. Предпочитая самоубийство плену, воины решили
выстроиться в круг и последовательно убивать каждого третьего из
живых до тех пор, пока не останется ни одного человека.
Однако Иосиф наряду с одним из своих единомышленников счел подобный
конец бессмысленным - он быстро вычислил спасительные места
в порочном круге, на которые поставил себя и своего товарища.
И лишь поэтому мы знаем его историю.

В нашем варианте мы начнем с того,
что выстроим в круг N человек, пронумерованных числами от 1 до N,
и будем исключать каждого k-ого до тех пор, пока не уцелеет только
один человек. (Например, если N=10, k=3, то сначала умрет 3-й,
потом 6-й, затем 9-й, затем 2-й, затем 7-й, потом 1-й, потом 8-й,
за ним - 5-й, и потом 10-й. Таким образом, уцелеет 4-й.)

Задача: определить номер уцелевшего.

Входные данные: числа N и k вводятся из файла INPUT.TXT.
Ограничения: 1<=N<=500, 1<=k<=100.

Выходные данные: Программа должна выдавать номер уцелевшего человека
в файл OUTPUT.TXT.

Пример входного файла:
10 3

Пример выходного файла:
4
Прислать комментарий     Решение

Страница: << 3 4 5 6 7 8 9 >> [Всего задач: 63]      



© 2004-... МЦНМО (о копирайте)
Пишите нам

Проект осуществляется при поддержке Департамента образования г.Москвы и ФЦП "Кадры" .