Язык программирования

89 задачвместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
При покупке товаров в интернет-магазинах все выбранные товары складываются в корзину. При этом покупатели могут забыть добавить какой-нибудь из нужных им товаров.
Для того, чтобы покупатели остались довольны покупкой, а магазин получил больше прибыли существует механизм рекомендаций, который определяет, какие товары обычно покупают вместе с набором уже выбранных. Например, если покупатель положил в корзину ластик, то, наверняка, ему также понадобится карандаш.

Вам необходимо разработать сервис рекомендаций, который по истории предыдущих заказов разработает для покупателя рекомендации, основанные на текущем состоянии его заказа.
Рекомендации должны быть двух типов: "с этим товаром всегда берут следующие товары" и "с этим товаром часто берут следующие товары".  При этом "часто" понимается как 50% и более.
Например, если покупатель хочет купить два товара A и B, а предыдущие заказы были вида (A,
D), (B, C, E), (C, F), (C, E, F, G) и (A, B, C, E), то товары C и E надо рекомендовать как те, что
покупается всегда (вместе с товаром B), а D  как тот, что покупается часто (50% случаев заказов
с товаром A).

Если товар всегда покупался с одним из заказанных, то необходимо включить в число часто покупаемых и те, которые часто встречаются с этим товаром (не менее чем в 50% случаев) в ранее сделанных заказах. Таким образом, дополнительно к товарам покупаемым часто, добавится товар F, который часто покупается с товаром C. Товар G рекомендовать не нужно, т.к. он встречается меньше, чем в 50% заказов вместе с товаром C.

Не нужно рекомендовать товары, которые уже выбрал покупатель. Если товар можно рекомендовать как "часто" и "всегда", то следует рекомендовать его только как "всегда".

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

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

Слова следует разделять пробелами. Порядок вывода не важен.

Ввод Вывод
5
A D
B C E
C F
C E F G
A B C E
A B
C E
D F

Один успешный бизнесмен Василий после двух долгих лет непрерывной работы ушел в долгожданный отпуск. Желая расслабиться, у него 
возникла идея завести сад из синих и красных цветов на заднем дворе своего коттеджа. Ежедневная работа с таблицами ему изрядно надоела, 
поэтому он хотел видеть сад круглой формы. Однако чтобы созерцание сада, сидя на кресле, было максимально расслабляющим, 
граница между синими и красными должна быть на одинаковом расстоянии L от него. 
 
Василий нанял садовника для создания сада. Садовник закупил одинаковое количество красных и синих цветов, Но потом вспомнил последнее 
условие бизнесмена. Ему было жаль выкидывать так много цветов, поэтому он решил что граница между разными цветами должна делить сад 
на две равные по площади части. Тогда он сможет посадить все цветы. Не владея высокими знаниями геометрии, садовник смог посчитать 
радиус сада R, но расстояние от кресла на веранде до центра сада он попросил посчитать Вас. 
 
Входной файл содержит целое число R - радиус сада (1 < R < 10000) и целое число L - расстояние от кресла до границы между синими и красными 
цветами (1 < L < 10000). Ваша задача вывести расстояние от кресла на веранде до центра сада. Ответ округлите до сотых, или выведите -1, 
если построить такой сад невозможно. Обратите внимание, что кресло может находится как за пределами сада, так и в саду. 

Входные данные: 
12 15 
 
Выходные данные: 
13.262 
 
 
Входные данные: 
100 1 
 
Выходные данные: 
-1 


(с) Линд Владимир
Феоктист Всеволодович — преподаватель физкультуры старой закалки, глубоко убеждённый, что в начале каждого урока школьников необходимо построить по росту. Для этого он сначала просит школьников построиться самостоятельно, после чего последовательно меняет местами про- извольную пару стоящих рядом учеников, пока шеренга не примет желанный вид.

Всего на урок пришло N детей, изначально построившихся таким образом, что рост стоящего на позиции i равен hi (используется нумерация c 1). Можно считать, что все числа hi различны и лежат в диапазоне от 1 до N. Шеренга считается упорядоченной, если на первой позиции стоит школьник ростом один, на второй позиции стоит школьник ростом два и так далее.

Феоктист Всеволодович получает большое удовольствие от процесса упорядочивания школьни- ков, поэтому он всегда выбирает наиболее длинную последовательность обменов. С другой стороны, он не хочет чтобы ученики догадались о том, что он умышленно затягивает построение, поэтому никогда не делает заведомо бессмысленных обменов. А именно, преподаватель никогда не меняет местами школьников на позициях i и j, если hi < hj . Очевидно, что данное ограничение делает процесс сортировки шеренги по росту конечным.

Староста Саша очень любит играть в волейбол и прекрасно понимает, что чем дольше препо- даватель будет расставлять всех по местам, тем меньше времени останется для игры. Ученики уже построились некоторым образом, а Феоктист Всеволодович вышел поговорить по телефону, так что Саша может успеть поменять местами ровно двух школьников, необязательно стоящих рядом в ше- ренге. Разумеется, он хочет сделать это таким образом, чтобы преподаватель как можно быстрее закончил упорядочивать шеренгу (Саша давно уже раскусил, как именно действует Феоктист Всево- лодович). С информатикой у старосты всегда были определённые проблемы, поэтому ему требуется ваша помощь.

Формат входных данных
В первой строке ввода содержится единственное число N — количество школьников на уроке (1 <= N <= 1 000 000). Во второй строке записано N различных целых чисел hi (1 <= hi <= N). i-е число соответствует росту школьника стоящего на i-й позиции.

Формат выходных данных
Выведите два числа — номера позиций школьников, которым необходимо поменяться местами, чтобы минимизировать количество действий преподавателя. Если таких пар несколько, то выведите любую из них. Если никому меняться местами не нужно, выведите -1 -1.
Ввод Вывод
5
2 4 3 5 1
2 5
4 1 2 3 4 -1 -1
10
2 3 7 1 5 10 4 6 9 8
3 7
По рзелульаттам илссеовадний одонго анлигйсокго унвиертисета, не иеемт занчнеия, в кокам пряокде рсапожолены бкувы в солве. Галвоне, чотбы преавя и пслоендяя бквуы блыи на мсете. Осатьлыне бкувы мгоут селдовтаь в плоонм бсепордяке, все-рвано ткест чтаитсея без побрелм. Пичрионй эгото ялвятеся то, что мы чиатем не кдаужю бкуву по отдльенотси, а все солво цликеом.

Вдохновившись исследованием британских учёных о восприятии человеком текста, Вася решил, что современная письменность нуждается в серьёзном упрощении. В частности, в лексиконе Васи все слова состоят только из букв a, b и c. Кроме того, память у Васи плохая, поэтому Вася помнит лишь слова, которые содержат не более L букв.

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

Британские учёные очень заинтересовались исследованиями Васи. Они вступили с молодым учё- ным в активную переписку, однако, получив очередное Васино сообщение были несколько озадачены тем, что же он имел ввиду. Так как разобраться они так и не смогли, а очередное революционное открытие уже было проанонсировано в СМИ, они решили как-то оценить уровень гениальности автора. Для этого они решили понять, а из какого минимального количества слов может состоять словарный запас Василия?

Формат входных данных
В первой строке входных данных содержится целое число L — максимальная длина слова, кото- рое может содержаться в лексиконе Васи (1 <= L <= 10 000). В следующей строке содержится непустое сообщение, полученное учеными. Длина сообщения не превосходит 20 000 символов.

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

Пример
Ввод:
3
ababaabab

Вывод:
2
aba
ab

Замечание
В первом примере из условия одним из возможных способов проинтерпретировать Васино сооб- щение является: ab aba ab ab.
21794#21794
Программа, предназначенная для создания, просмотра, редактирования, форматирования, сохранения и печати текстовых документов, которая может содержать объекты
различной природы - это

1. текстовый редактор
2. текстовая программа
3. текстовый процессор
4. текстовый обработчик
21760#21760
Можно ли открыть файл универсального формата в платной программе?

1. да
2. нет
3. не всегда
4. в случае, если в списке программы есть этот формат
21743#21743
Написание конспекта является процессом

1. сбора информации
2. обработки информации
3. хранения информации
4. передачи информации
Поделиться
Класснуть