Задача A. Светофор (30 баллов)



Скачать 46.63 Kb.
НазваниеЗадача A. Светофор (30 баллов)
Дата13.06.2013
Размер46.63 Kb.
ТипЗадача
источник

Школьный этап Всероссийской олимпиады школьников по информатике 2010 г. 10-11 класс.

Районный отдел образования администрации Саракташского района.


Задача A. Светофор (30 баллов)

Имя входного файла:

a.in

Имя выходного файла:

a.out

Максимальное время работы на одном тесте:

1 секунда

Максимальный объем используемой памяти:

64 мегабайта







Вася подошел к перекрестку и увидел, что на светофоре в этот момент загорелся красный свет. Вася залюбовался тем, как четко переключаются сигналы светофора:

красный – желтый – зеленый – желтый – красный – желтый – зеленый - …

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

Формат входных данных

Во входном файле задано одно число i, задающее, в какой раз загорелся зеленый свет (1≤i≤100).

Формат выходных данных

В выходной файл выведите два числа. Первое — сколько раз загорался красный свет, второе — сколько раз загорался желтый.

Пример

a.in

a.out

2

2 3

^ Задача B. Книга (30 баллов)

Имя входного файла:

b.in

Имя выходного файла:

b.out

Максимальное время работы на одном тесте:

1 секунда

Максимальный объем используемой памяти:

64 мегабайта







Оргкомитет Московской олимпиады по информатике решил издать книгу с решениями олимпиадных задач сразу на двух языках – на Паскале и на Си. При этом тексты решений на Паскале решили напечатать с одной стороны книги, а на Си – с другой стороны. Таким образом книгу стало можно читать как с начала, так и с конца, предварительно ее перевернув.

Тексты решений на Паскале заняли ^ N первых страниц, которые пронумеровали от 1 до N. А тексты на Си – M последних страниц, которые пронумеровали числами от 0 (последняя страница) до M–1.

Книга состоит из отдельных листов. У листа две стороны, на каждой из которых печатается одна страница книги. При необходимости, между текстом на Паскале и текстом на Си оставляется одна пустая страница. Листы строго по порядку сшиваются и образуют книгу.

Например, если N=5 и M=3 страницы книги идут в следующем порядке. Сначала страницы решений на Паскале: 1 2 3 4 5, затем – страницы решений на Си – 2 1 0. Здесь на первый лист попадают страницы номер 1 и 2 решений на Паскале, на второй – 3 и 4, на третий — страница 5 решений на Паскале и страница 2 решений на Си, и, наконец, на четвертый лист — страницы 1 и 0 решений на Си (ровно в таком порядке!).

Если же, например, N=2 и M=3, то на первом листе будут напечатаны страницы 1 и 2 решений на Паскале, на втором – пустая страница и страница 2 решений на Си, на третьем – страницы 1 и 0 решений на Си.

Напишите программу, которая по номеру листа определяет, решения на каком языке и какие номера страниц должны быть напечатаны на этом листе.

Формат входных данных

Во входном файле содержатся три числа: N, M и номер листа P (1≤N≤1000, 1≤M≤1000, 1≤P≤1000).

Формат выходных данных

Выходной файл должен содержать две строки. В первой строке должно идти описание той стороны листа, которая будет идти в книге раньше, во второй строке — описание второй стороны листа.

Описание страницы должно состоять из заглавной английской буквы P (если это страница решения на Паскале) или C (если это страница решения на C), ровно одного пробела и номера соответствующей страницы.

Если страница должна быть оставлена пустой, то в соответствующей строке должны быть напечатаны прочерки (символ минус “–“) как вместо буквы, обозначающей язык решений, так и вместо номера страницы (см. примеры).

Если листа с таким номером в книге не будет вообще, в обеих строках должны идти описания, соответствующие пустой странице.

Примеры

b.in

b.out

5 3

2

P 3

P 4

5 3

3

P 5

C 2

5 3

4

C 1

C 0

2 3

2

- -

С 2

2 3

10

- -

- -

^ Задача C. Скидки (40 баллов)

Имя входного файла:

c.in

Имя выходного файла:

c.out

Максимальное время работы на одном тесте:

1 секунда

Максимальный объем используемой памяти:

64 мегабайта







В супермаркете проводится беспрецедентная акция – «Покупая два любых товара, третий получаешь бесплатно*», а внизу мелким шрифтом приписано «* - из трех выбранных вами товаров оплачиваются два наиболее дорогих».

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

Формат входных данных

Во входном файле задано сначала число N (1≤N≤1000), а затем N чисел – стоимости выбранных Васей товаров. Все стоимости – натуральные числа, не превышающие 10000.

Формат выходных данных

В выходной файл выведите одно число – сумму денег, которую Вася должен взять с собой в супермаркет (минимально возможную).

Примеры

c.in

c.out

Пояснение

6

1 5 4 3 5 7

19

Вася сначала пройдет через кассу с товарами стоимостью 1, 3 и 4 – заплатит 7 рублей и товар стоимостью 1 получит в подарок, а затем снова зайдет в супермаркет и купит товары стоимостью 5 и 7, еще один товар стоимостью 5 получив в подарок.

5

3 15 25 8 8

51

Вася в первый заход в супермаркет купит товары стоимостью 15 и 25 рублей, в качестве подарка взяв товар стоимостью 8 рублей. А во второй заход в супермаркет купит товары стоимостью 3 и 8, не взяв никакого подарка.



Добавить документ в свой блог или на сайт


Похожие:



Если Вам понравился наш сайт, Вы можеть разместить кнопку на своём сайте или блоге:
refdt.ru


©refdt.ru 2000-2013
условием копирования является указание активной ссылки
обратиться к администрации
refdt.ru