Аят решил посмотреть какой-нибудь хороший фильм. Он взял пустую флешку, чтобы скопировать на нее фильм с лучшим рейтингом по версии AYAT FILM RATING. Выяснилось, что флешка не резиновая, и далеко не каждый фильм помещается на нее. Поэтому Аят решил выбрать фильм с лучшим рейтингом, который поместится на флешку. Какой фильм он из этого списка выбрал? Или Аят, взгрустнув по поводу несостоявшегося киносеанса, саботированного маленькой флешкой, пошел на пару физической культуры?
На первой строке целое число $$$S$$$ — размер флешки (от 1 до 30000). На второй строке целое число $$$N$$$ — количество фильмов в списке (от 1 до 100). Далее $$$N$$$ пар целых чисел: $$$R_i$$$ — рейтинг $$$i$$$-го фильма (от 1 до 100) и $$$V_i$$$ — размер $$$i$$$-го фильма (от 1 до 100000). Рейтинги у всех фильмов различны.
Целое число $$$K$$$ — номер фильма с максимальным рейтингом, который помещается на флешке. Если Аят не смог выбрать фильм, выведите $$$-1$$$.
1000 2 100 2000 50 4700
-1
4000 5 100 4700 20 6200 50 1400 40 700 55 4200
3
Команда Big-dipper — это Денис, Адиль и Надира. Но это никак не помогает решить задачу.
Два целых числа $$$A$$$ и $$$B$$$ (оба от 1 до 1000).
Одно целое число.
7 2
95
2 2
40
235 152
38783
15 25
0
Маша и Вадим написали по строке одинаковой длины $$$N$$$ из букв латинского алфавита: $$$a$$$ и $$$b$$$. Когда они сравнили строки, выяснилось, что строки отличаются. «Так не пойдет! Сейчас мы сделаем из них одинаковые строки!» — сказал тот, кто повыше, пошире и носит очки. Они решили привести обе строки к общему виду. Воодушевлённый воспоминаниями годичной давности о методах сортировки, Вадим придумал следующие правила «приведения»: за один ход можно переставить две соседних буквы в одной из строк, если эти буквы различны (то есть $$$ab \rightarrow ba$$$ или $$$ba \rightarrow ab$$$). «С такими правилами ты точно не приведешь строки $$$aa$$$ и $$$bb$$$ к одинаковой!» — ответила та, кто пониже, стройней и с хорошим зрением. Проверьте, смогут ли ребята привести данные строки к общему виду, и если смогут, то какое минимальное количество ходов понадобится?
Целое число $$$N$$$ — длина строк (от 1 до 100). Две строки из $$$N$$$ латинских символов $$$a$$$ и $$$b$$$.
Целое число $$$K$$$ — минимальное количество ходов, необходимое для приведения к общему виду. Если строки привести нельзя, выведите $$$-1$$$.
2 aa bb
-1
10 aaaaaaaaab baaaaaaaaa
9
6 baaabb abbaab
3
Диму попросили написать программу, которая перебирает все неотрицательные числа, состоящие из не более, чем $$$M$$$ цифр. Когда ему давали задание, то ни слова не сказали про систему счисления, в которой должны быть записаны числа. Поэтому хитрый Дима выбрал двоичную систему счисления, чтобы программа работала как можно быстрее (подходящих чисел в ней всего лишь $$$2^M$$$). Как только довольный Дима доложил о выполнении задания, ему дали следующее: написать такую же программу, но чтобы она работала параллельно на кластере из $$$D$$$ компьютеров, причем каждое число должно быть получено ровно одним компьютером ровно один раз. Так как Дима в глубине души за равенство всех, всего и вся, то он решил разделить числа между компьютерами так, чтобы все компьютеры перебрали одинаковое количество чисел. Выяснилось, что далеко не для любой системы счисления можно распределить все нужные ему числа поровну между $$$D$$$ компьютерами. Тогда он решил найти минимальное основание системы счисления, для которой это можно сделать. Помогите Диме!
Два целых числа: $$$M$$$ — максимальное количество цифр в числе (от 1 до $$$10^9$$$) и $$$D$$$ — количество компьютеров (от 2 до $$$10^9$$$).
Целое число $$$K$$$ — минимальное основание системы счисления ($$$K \gt 1$$$), в которой все числа из не более, чем $$$M$$$ цифр, можно разделить поровну между $$$D$$$ компьютерами.
3 1000
10
2 12
6
4 48
6
В отличии от Димы у Вани другая позиция по выбору основания системы счисления. Он считает, что двоичная система счисления — лучшая система счисления в мире. После курса дискретной математики это мнение настолько укрепилось, что он решил в десятичной системе счисления ввести «двоичное округление» для чисел из устаревшей десятичной системы счисления в передовую двоичную. Суть округления довольна проста: любое натуральное число заменяется на ближайшее, в записи которого присутствуют только цифры 0 и 1. Напишите программу, которая «округляет» числа.
Целое число $$$N$$$ (от 1 до $$$10^{100}$$$). Ввод заканчивается точкой.
Целое число $$$K$$$ — число, полученное после «двоичного округления» без ведущих нулей. Если ближайших числа два, то округлять можно в любую сторону.
5556.
10000
1011556.
1011111
101101234567890.
101101111111111
Андрей и Ануар играют в игру с неадекватным ферзем на прямоугольной шахматной доске. Неадекватный ферзь может ходить вправо, вниз или вправо-вниз по диагонали на любое количество клеток (только в 3 направлениях, а не в 8, как в нормальных шахматных правилах). Хоть этот ферзь и неадекватен, но с правилами этикета знаком: он не может бить другие фигуры и ходить сквозь них. В начале игры ферзь стоит в левом верхнем углу доски. Ходить начинает Андрей. Проигрывает тот, кто не может сделать ход. Кто выиграет при оптимальной игре обоих игроков?
Целые числа $$$N$$$, $$$M$$$ — количество строк и столбцов доски соответственно (оба числа от 1 до 100). Далее матрица $$$N \times M$$$, состоящая из символов '0' (ноль — свободные клетки) и 'x' (икс — клетки, занятые другими фигурами). Гарантируется, что левый верхний угол помечен свободным.
Строка 'Andrew' (без кавычек), если выиграет Андрей. Строка 'Anuar' (без кавычек), если выиграет Ануар.
3 6 000000 0xxx00 000000
Andrew
1 1 0
Anuar
4 4 00x0 0x00 x000 0000
Anuar
Никто уже и не помнит, какой был праздник, но суть была в торте, который Илья принес домой. На празднике было трое друзей, и Илья в магазине выбрал торт в форме прямоугольника (его легко разделить на 4 равных части). Но, транспортируя торт из магазина домой, Илья споткнулся и торт из красивого ровного прямоугольника превратился в непонятный выпуклый четырехугольник. Все 4 вишни, что украшали торт, скатились к вершинам четырехугольника так, что в каждой вершине оказалось по одной вишне. Когда Илья принес торт домой, то перед ним встала непростая задача: как его разделить на 4 равных по площади части (это же не прямоугольник на 4 равных части делить)? Но Илья не растерялся и абстрагировался! Он провел через центр квадратного стола 2 оси параллельно краям стола (хотя бы с делением стола на 4 равных части не возникло проблем) и положил торт так, что все 4 вишни оказались в разных четвертях. Внимательно присмотревшись, Илья понял, что на торте есть такая особенная точка $$$M$$$, что если через нее провести две прямые, параллельные осям, то все 4 полученных кусочка будут в форме четырехугольников, равны по площади и на каждом будет ровно по одной вишне. Осталось найти эту точку. Помогите Илье!
8 целых чисел ($$$X_1$$$, $$$Y_1$$$, $$$X_2$$$, $$$Y_2$$$, $$$X_3$$$, $$$Y_3$$$, $$$X_4$$$, $$$Y_4$$$), которые задают 4 последовательных вершины четырехугольника. Гарантируется, что N-я вершина лежит в N-й четверти ($$$N=1, 2, 3, 4$$$). Модуль каждого числа не менее 1 и не более 100.
Два вещественных числа с точностью не менее 2 знаков после запятой — координаты точки $$$M$$$, через которые проведены разрезы. Гарантируется, что решение существует.
2 3 -2 2 -1 -2 3 -1
0.5 0.5
1 3 -1 1 -1 -3 1 -5
0.162278 -1
Двумерная металлическая решетка имеет вид прямоугольника $$$(N-1) \times (M-1)$$$. В узлах решетки находятся атомы, которые пронумерованы от $$$(1, 1)$$$ — левый верхний до $$$(N, M)$$$ — правый нижний. У каждого атома есть некоторое число электронов, причем на решетке есть ровно один электрон–непоседа на атоме $$$(i_1, j_1)$$$ и один электрон–ускоритель $$$(i_2, j_2)$$$. Все электроны, кроме непоседы, всегда остаются на своих атомах. Каждую секунду электрон-непоседа переходит из атома $$$A$$$ на соседний по горизонтали или вертикали атом $$$B$$$, если число электронов в атоме $$$B$$$ на 1 меньше, чем в $$$A$$$ (с учетом самого электрона–непоседы). Все атомы, на которых появляется электрон $$$A$$$, он отмечает. Если электрон-непоседа добирается до атома, на котором находится электрон-ускоритель, то электрон-непоседа становится сильно–заряженным и теперь может перепрыгивать через один атом. Электрон делает прыжок из атома $$$A$$$ в атом $$$B$$$ через атом $$$M$$$, если:
Два целых числа $$$N$$$, $$$M$$$ — количество строк и столбцов решетки (оба числа от 1 до 100). Матрица $$$N \times M$$$, состоящая из целых чисел $$$A_{ij}$$$, — количество электронов на позиции $$$(i, j)$$$ (все элементы матрицы от 1 до 100). После матрицы даны две пары целых чисел $$$(i_1, j_1)$$$ и $$$(i_2, j_2)$$$ — координаты электрона–непоседы и электрона–ускорителя (номер строки от 1 до $$$N$$$, столбца от 1 до $$$M$$$).
Одно целое число — наибольшее возможное количество отмеченных атомов.
2 2 4 3 4 5 2 1 2 2
1
3 4 3 3 3 3 3 1 1 1 4 1 3 1 3 1 1 4
7
3 3 5 5 1 5 1 5 1 5 6 3 3 3 3
6