---> 85 задач <---
Страница: << 11 12 13 14 15 16 17 Отображать по:
ограничение по времени на тест
4.0 second;
ограничение по памяти на тест
512 megabytes

Мирко получил в подарок на свой день рождения квадратный стол N x N , где в каждой клетке записано неотрицательное целое число. К сожалению, некоторые числа кажутся Мирко слишком большими, поэтому он собирается положить на стол K фишек домино, которые закроют некоторые слишком большие числа. Точнее, он собирается положить фишки домино в соответствии со следующими правилами:

1. Каждая фишка домино покрывает две клетки, соседних по строчке или столбцу..

2. Фишки домино не накладываются друг на друга (но могут соприкасаться).

3. Сумма чисел на всех видимых (непокрытых) клетках минимальна.

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

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

Первая строка содержит два целых числа: N ( 1 ≤ N ≤ 2000 ) - размер стола, и K ( 1 ≤ K ≤ 8 ) - количество фишек домино. Каждая из следующих N строк содержит N целых чисел (в диапазоне [0, 1000]) - числа в соответствующих клетках поля.

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

Выведите единственное целое число - минимально возможную сумму чисел в клетках после установки фишек домино.

Примечание

Решения, работающие при K ≤ 5 , будут оцениваться в 70 баллов.

Примеры
Входные данные
3 1
2 7 6
9 5 1
4 3 8
Выходные данные
31
Входные данные
4 2
1 2 4 0
4 0 5 4
0 3 5 1
1 0 4 1
Выходные данные
17
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

На лесистой луне Эндора находится, если верить Имперской Книге Рекордов, самая длинная ветка в галактике. На этой ветке длиной L метров сидит N дружелюбных хамелеонов. Каждый хамелеон ходит вдоль ветки со скоростью 1 м/с в одном из двух возможных направлений (налево или направо), а также имеет собственный цвет среди одного из K возможных.

Известно, что хамелеоны на Эндоры следуют древним законам, в соответствии с которыми любая прогулка вдоль ветки должна продолжаться до ее конца (после чего хамелеон спрыгивает с ветки), а в случае столкновения двух хамелеонов, они должны развернуться на 180 градусов и продолжить движение в противоположном направлении. Кроме того, при таком столкновении, если хамелеон, двигавшийся налево, имел цвет a , а хамелеон, двигавшийся направо - цвет b , то после разворота первый хамелеон изменит свой цвет на b , а второй хамелеон - на ( a + b ) modK .

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

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

В первой строке содержится три целых числа числа N , K и L ( 1 ≤ N ≤ 100000 , 1 ≤ K ≤ 40 , 1 ≤ L ≤ 1000000 ). В последующих N строках дана информация о хамелеонах. В i -й строке содержатся: целое число d i ( 1 ≤ d i L ) - изначальное положение, целое число b i ( 1 ≤ b i K - 1 ) - изначальный цвет, и символ "L" (налево) или "D" (направо) - изначальное направление движения. Гарантируется, что все числа d i различны и даны в возрастающем порядке.

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

Выведите K строк, i -я строка должна содержать одно число - расстояние, пройденное хамелеонами цвета i .

Примечание

Решения, работающие при 1 ≤ Nle 3000 , будут оцениваться в 50 баллов.

Примеры
Входные данные
2 3 10
0 0 D
10 1 L
Выходные данные
10.0
10.0
0.0
Входные данные
4 3 7
1 0 D
3 0 D
4 1 L
6 2 D
Выходные данные
10.0
4.0
1.0
Входные данные
4 4 5
1 1 D
3 3 L
4 2 D
5 0 L
Выходные данные
2.5
4.0
2.5
4.0
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Мирко и Славко играют в игру. Мирко ходит первым и выбирает непустое множество пар чисел от 1 до N (включительно). При этом числа в одной паре должны быть различны и взаимнопросты. Например, для N = 5 , Мирко может выбрать такое множество пар: {(1, 2), (3, 4), (2, 5), (3, 5)}.

Славко ходит вторым и его задача - найти разделяющий элемент для множества пар Мирко. Разделяющим элементом для множества пар называется такое число x из диапазона [2: N ] , что для каждой пары ( a , b ) из множества выполняется одно из двух условий:

1. a , b < x

2. a , b x

Например, множество пар {(1, 2), (3, 4)} имеет разделяющий элемент x = 3 .

Если разделяющий элемент существует, Славко обязательно его найдет, и тогда он выиграет. Мирко же выиграет, если Славко не сможет найти разделяющий элемент. Он просит вас помочь: определите, как много множеств пар, удовлетворяющих условию, он может выбрать, чтобы гарантированно выиграть. Так как это число может быть очень большим, выведите его по модулю 1 000 000 000.

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

Единственная строка содержит одно целое число N ( 1 ≤ N ≤ 20 ).

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

Выведите одно целое число - ответ на вопрос Мирко по модулю 1000000000.

Примеры
Входные данные
2
Выходные данные
1
Входные данные
3
Выходные данные
5
Входные данные
4
Выходные данные
21
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Одаренный предпринимательским талантом Мистер Картошечка открывает два новых магазина, где, как вы, вероятно, уже догадались, он будет продавать картошечку. Мистер Картошечка получает картошку от N фермеров. Каждый фермер предлагает ровно a i картофелин с мешке общей стоимостью c i . Мистер Картошечка собирается купить по мешку картошки у кадого из фермеров и распределить их в два своих магазина.

Обозначим среднюю цену картошки в магазинах за P 1 и P 2 . Средняя цена равняется отношению суммарной стоимости к количеству картошки в данном магазине. Мистер Картошечка хочет, чтобы значение P 1 · P 2 было минимальным.

Кроме того, хотя бы в одном магазине дожно быть ровно L мешков картошки.

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

В первой строке содержатся два целых числа N и L ( 1 ≤ L < N ≤ 100 ).

Вторая строка содержит N целых чисел a i ( 1 ≤ a i ≤ 100 ), разделенных пробелами.

Третья строка содержит N целых чисел c i ( 1 ≤ c i ≤ 10 6 ), разделенных пробелами.

.

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

Выведите одно вещественное число, округлённое до 3 знаков после запятой – минимальное возможное значение P 1 · P 2 .

Система оценки

30 баллов: N ≤ 20 .

Примеры
Входные данные
3 1
3 2 1
1 2 3
Выходные данные
0.556
Входные данные
3 2
2 2 2
3 3 3
Выходные данные
2.250
ограничение по времени на тест
5.0 second;
ограничение по памяти на тест
512 megabytes

Анике приснился необычный сон. В нем она увидели бесконечную доску. На той доске бесконечно много строк и бесконечно много столбцов, содержащих бесконечно много чисел. Что интересно, каждое число появляется на доске конечное число раз.

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

Формально, если A ( i , j ) - значение в i -й строке и j -м столбце доски, то:

1. A ( i , 1) = i

2. A ( i , j ) = A ( i , j - 1) + rev ( A ( i , j - 1)) , если j > 1 .

rev ( x ) - операция разворота числа в его десятичном представлении. Например, rev (345) = 543 , а rev (1040) = 0401 = 401 .

Затем во сне Аника увидела дружелюбного призрака Бозо, появившегося из-за угла. Он сказал ей: "Аника! Если ты правильно ответишь на мои вопросы, я подарю тебе коробку вкусного печенья. А вопросы мои будут такие: я буду давать тебе по два числа A и B , а ты должна будешь сказать, сколько на доске чисел, лежащих в диапазоне [ A : B ] ".

Аника, хоть она и во сне, очень хочет поесть печенья, поэтому просит вас помочь ответить на вопросы Бозо.

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

Первая строка содержит одно целое число Q ( 1 ≤ Q ≤ 10 5 ) - количество вопросов.

Каждая из последующих Q строк содержит два целых числа A и B ( 1 ≤ A B ≤ 10 10 ) - вопросы Бозо.

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

Выведите Q строк, в каждой одно целое число - ответ на соответствующий вопрос Бозо.

Примечание

Решения, работающие при A , B ≤ 10 6 , будут оцениваться в 50 баллов.

Примеры
Входные данные
2
1 10
5 8
Выходные данные
18
8
Входные данные
3
17 144
121 121
89 98
Выходные данные
265
25
10
Входные данные
1
1 1000000000
Выходные данные
1863025563

Страница: << 11 12 13 14 15 16 17 Отображать по:
Выбрано
:
Отменить
|
Добавить в контест