ЗАДАЧИ
problems.ru |
О проекте
|
Об авторах
|
Справочник
Каталог по темам | по источникам | |
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Версия для печати
Убрать все задачи Парламент некоторой страны принял новый закон о праздничных днях. Согласно этому закону первые K дней года, а также 23 февраля и 8 марта объявляются праздничными, а все остальные праздники отменяются. При этом все выходные (субботы и воскресенья), попавшие на праздничные дни, переносятся на следующие за этими праздниками рабочие дни. В зависимости от того, на какой день недели приходится 1 января, количество нерабочих дней, которые идут подряд, может меняться. Требуется определить, какое наибольшее количество нерабочих дней может идти подряд. Формат входных данных Во входном файле a.in записано единственное число K (1 £ K £ 50). Формат выходных данных В выходной файл a.out требуется записать единственное число - наибольшее количество нерабочих дней, идущих подряд. Примеры
![]() |
Страница: << 1 2 3 4 5 6 7 >> [Всего задач: 32]
Вводятся числа от 1 до 9 до тех пор, пока не будет введен 0. Всего будет введено не больше 100 чисел. Посчитать количество единиц в этой последовательности, количество двоек, количество троек и так далее (в выходном файле всегда должно быть 9 чисел). Пример входного файла 1 1 4 1 5 8 6 3 5 1 0 Пример выходного файла: 4 0 1 1 2 1 0 1 0
(Та же задача, что и 122, только может быть введено до 100000 чисел) Вводятся числа от 1 до 9 до тех пор, пока не будет введен 0. Всего будет введено не более 100000 чисел Посчитать количество единиц в этой последовательности, количество двоек, количество троек и так далее (в выходном файле всегда должно быть 9 чисел). Пример входного файла 1 1 4 1 5 8 6 3 5 1 0 Пример выходного файла: 4 0 1 1 2 1 0 1 0
В некотором государстве действует N фирм, конкурирующих между собой. У каждой фирмы есть некоторая прибыль в год, равная V[i] американских рублей. У царя есть любимые фирмы, а есть нелюбимые. Соответственно, налог для всех фирм разный и назначается царем в индивидуальном порядке. Налог на i-ую фирму равен p[i] процентов. Собиратели статистики решили посчитать, с какой фирмы в государственную казну идет наибольший доход (в казну идут все налоги). К сожалению, они не учили в детстве ни математику, ни информатику (так что учитесь, дети!), и их задача резко осложняется. Помогите им в этой нелегкой задаче. Входной файл input.txt ----------------------- сначала записано число N - число фирм (0<N<=100). Далее идет N целых неотрицательных чисел, не превышающих 154 - доходы фирм, а затем еще N целых чисел от 0 до 100 - налоги фирм в процентах. Выходной файл output.txt ------------------------ В выходной файл выведите одно число - номер фирмы, от которой государство получает наибольший налог. Если таких фирм несколько, выведите любую из них. Пример входного файла: 3 100 1 50 0 100 3 Пример выходного файла: 3
Дан массив. Требуется удалить из него элемент, стоящий на месте номер 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.
Дан массив. Требуется вставить в него на место номер 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.
Страница: << 1 2 3 4 5 6 7 >> [Всего задач: 32] |
© 2004-...
МЦНМО
(о копирайте)
|
Пишите нам
|
![]() |