В г. Москве 8-11 класс Во всех задача



Скачать 68.65 Kb.
НазваниеВ г. Москве 8-11 класс Во всех задача
в г.Москве<> <> <>8-11 класс<><><><>Во всех задача
Дата21.04.2013
Размер68.65 Kb.
ТипЗадача
источник

5 декабря 2010 года. Окружной этап

Всероссийской олимпиады школьников по информатике в г.Москве

8-11 класс


Во всех задачах входные данные вводятся с клавиатуры, результат выводится на экран (кроме языков qbasic и C#, инструкции для них приведены на ejudge.179.ru). Проверять корректность входных данных не нужно.

Для сдачи решений в проверяющую систему вам нужно зайти на страничку ejudge.179.ru, для входа в систему используйте выданный вам логин и пароль.


Задача A. Поклейка обоев

Пете нужно оклеить обоями стену размером N метров в высоту и ^ M метров в ширину. Для поклейки используются обои, которые продаются рулонами. Каждый рулон имеет ширину 1 метр и длину K метров.

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

По данным числам N, M и K определите наименьшее количество рулонов, которое нужно купить Пете, чтобы оклеить всю стену.

^ Входные данные. Вводятся натуральные числа N, M и K (1≤N≤100, 1≤M≤100, NK≤100).

Выходные данные. Выведите одно число — количество рулонов, которые должен купить Петя.

^ Пример ввода

Пример вывода

10

5

25

3

3

6

9

2


^ Задача B. Домино

Рассмотрим N-домино. В таком домино каждая костяшка состоит из двух половинок, на каждой из которых нарисовано от 0 до N точек. Полный комплект костяшек такого домино содержит все возможные костяшки, каждую — по одному разу. Например, для N=2 в комплект войдут следующие костяшки: (0,0), (0,1), (0,2), (1,1), (1,2) и (2,2)



Напишите программу, которая по заданному ^ N определит, сколько всего точек изображено на всех костяшках полного комплекта N-домино.

Входные данные. Вводится натуральное число N (1≤N≤30).

Выходные данные. Программа должна напечатать одно число — общее количество точек на всех костяшках полного комплекта N-домино.

^ Пример ввода

Пример вывода

2

12


Задача C. Списывание

На контрольной работе N учеников сидят в ряд. Для каждого ученика известно, какую оценку он получил бы, если бы писал эту контрольную самостоятельно (оценка — это число от 2 до 5). Однако ученики могут писать контрольную не только самостоятельно, но и списывать у своего соседа, но только если сосед пишет контрольную самостоятельно. В этом случае списывающий получит такую же оценку, какую получит тот, у кого он списал.

А именно (правила применяются строго в указанном порядке):

  • Школьники, которые знают материал на 5, будут писать контрольную самостоятельно.

  • Школьник, который знает материал на 4, если он сидит рядом с тем, кто знает на 5, будет списывать у него, а в противном случае будет писать самостоятельно.

  • Школьник, который знает на 3, если он сидит рядом с тем, кто знает на 5, будет списывать у него. Если среди его соседей знающего на 5 нет, но есть тот, кто знает на 4, и при этом пишет самостоятельно, то троечник будет списывать у него. В противном случае будет писать самостоятельно.

  • Аналогично школьник, знающий на 2 — из соседей, которые пишут самостоятельно, выберет того, кто знает лучше, и спишет у него. А если таких нет (или оба его соседа также знают на 2), то будет писать самостоятельно.

Определите, кто какую оценку в итоге получит.

^ Входные данные. Вводится число N (1≤N≤10) — количество учеников, и далее последовательность из N чисел, описывающая, кто на какую оценку может написать контрольную, если будет писать самостоятельно.

^ Выходные данные. Выведите N чисел — оценки, которые получат ученики за контрольную.

^ Пример ввода

Пример вывода

Пояснение

5

5

2

3

4

5

5

5

3

5

5

Первый и пятый ученики будут писать самостоятельно. Второй спишет у первого, а четвертый — у пятого (в итоге также получат пятерки). Третьему не у кого списывать, так как его соседи будут писать работу не самостоятельно.

^ Еще один пример см. на следующей странице

6

2

2

3

2

2

4

2

3

3

3

4

4

Второй и четвертый спишут у третьего, пятый — у шестого.


^ Задача D. Последовательности

Рассмотрим последовательности чисел. Первая последовательность состоит из одного числа K. Каждая следующая последовательность чисел описывает предыдущую по такому правилу.

Просматриваем описываемую последовательность слева направо и разбиваем на отрезки, состоящие из подряд идущих равных чисел (причем все идущие подряд одинаковые числа всегда объединяем в один отрезок). Далее каждый такой отрезок описываем двумя числами — первое число говорит, сколько раз повторяется одно и то же число, второе число говорит, какое именно число повторяется. Записываем эти пары последовательно в соответствии с отрезками слева направо, и получаем новую последовательность (см. примеры ниже).

Например, для K=2 последовательности получатся такими:



Последовательность

Как ее читать (слова в описании соответствуют числам текущей последовательности слева направо, и описывают предыдущую последовательность)

1

2

Исходная последовательность

2

1 2

Одна «двойка»

3

1 1 1 2

Одна «единица», одна «двойка»

4

3 1 1 2

Три «единицы», одна «двойка»

5

1 3 2 1 1 2

Одна «тройка», две «единицы», одна «двойка»

6

1 1 1 3 1 2 2 1 1 2

Одна «единица», одна «тройка», одна «двойка», две «единицы», одна «двойка»

Напишите программу, которая по исходному числу K напечатает N-ую получающуюся последовательность.

^ Входные данные. Вводится число K (1≤K≤9) и число N (1≤N≤15).

Выходные данные. Ваша программа должна печатать N-ую последовательность, полученную из начальной последовательности, состоящей из одного числа K. Числа при выводе следует разделять пробелами.



^ Пример ввода

Пример вывода

2

6

1 1 1 3 1 2 2 1 1 2

2

1

2

1

3

2 1


^ Задача E. Сравнения

Про три числа (обозначенных a, b, c) известны все результаты сравнения их друг с другом. Требуется расположить эти числа в порядке возрастания.

^ Входные данные. Вводятся три строки. В первой записан результат сравнения между собой чисел a и b в следующем формате. Первый символ — всегда a, третий символ — b (соответствующие маленькие латинские буквы), а между ними записан один из символов >, < или =. Во второй строке в таком же формате записан результат сравнения a и с (первый символ всегда a, третий — c), а в третьей строке — результат сравнения b и c (первый символ всегда b, третий — c). Гарантируется, что входные данные не противоречивы.

^ Выходные данные. Выведите символы a, b, c в порядке величины соответствующих им чисел — каждое следующее число должно быть больше либо равно предыдущему. Если два числа равны между собой, соответствующие переменные могут быть выведены в любом порядке. Символы должны быть выведены в одной строке без пробелов и других разделителей.

Пример ввода

Пример вывода

a>b

a>c

b>c

cba

a=b

a>c

b>c

cab

Примечание. Во втором примере ответ cba также является верным. Обратите внимание, если вариантов ответа несколько — не нужно выводить их все, ваша программа должна вывести ровно один вариант ответа.

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


Похожие:



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


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