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

1 719 задачвместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: ✓ успешные, ✗ неуспешные.
65812#65812
Ваня очень дружелюбный мальчик, поэтому у него очень много друзей. Ваня рад этому, но вот делиться, если он что-то купил, приходится со всеми. Потому Ваня придумал очень гениальный план. Когда его спрашивают, что он купил, при выходе с магазина, он хочет называть только те продукты, которыми ему не жалко поделиться.
Продукты, которыми не жалко поделиться, это продукты, которых Ваня купил минимум K//2 (целочисленное деление K на 2), где K – количество друзей, которые встретили Ваню у магазина.
Определите, какими продуктами Ваня поделится в этот раз с ребятами.

Формат входных данных
На вход в программу на первой строке подаётся K – количество друзей, которые встречают Ваню у магазина (1 <= K <= 10000).
На второй строке подаётся N (1 <= N <= 1000000) – количество продуктов, которые купил Ваня.
Далее, на N строках указаны названия продуктов (одно слово английскими буквами), купленных Ваней, притом продукты, которые были куплены более чем в количестве 1 штуки, идут подряд. Если Ваня купил Apple 3 штуки, то Apple будут идти подряд. Но продукты не отсортированы по алфавиту!

Формат выходных данных
На выходе необходимо вывести в отсортированном по алфавиту порядке названия всех продуктов (каждое название на новой строке), которыми поделится Ваня. Если Ваня не поделится с ребятами продуктами, то вывести «NO» заглавными буквами.
✓ 97✗ 199400лёгкаяВойти и решать
Женя готовится к городским спортивным соревнованиям, где хочет показать себя самым сильным. Он тренируется по системе шаолиньских монахов. Тренировка должна состоять из N подходов, каждый из которых длится M минут и S секунд, между каждой парой подряд идущих подходов должен быть перерыв длительностью P секунд.
Помогите Жене определить, сколько всего времени займёт тренировка.

Формат входных данных
Первая строка содержит целое число N (1 ≤ N ≤ 100) — количество подходов.
Вторая строка содержит целое число M (0 ≤ M ≤ 59) — количество минут в одном подходе.
Третья строка содержит целое число S (0 ≤ S ≤ 59) — количество секунд в одном подходе.
Четвёртая строка содержит целое число P (0 ≤ P ≤ 120) — длительность паузы между подходами, выраженная в секундах.
Гарантируется, что один подход занимает ненулевое время.
Формат выходных данных
Выведите два целых числа — продолжительность тренировки в минутах и секундах. Первое число должно быть равно количеству полных минут в тренировке. Второе число — количеству секунд в тренировке, находящемуся в диапазоне от 0 до 59 включительно.

Замечание
В примере из условия Жене нужно выполнить 4 подхода, каждый из которых имеет длительность 3 минуты 24 секунды. При этом между походами у него будет 3 перерыва, каждый из которых имеет длительность 70 секунд. Следовательно, вся тренировка займёт 17 минут и 6 секунд.
Напишите программу, которая запрашивает математическое выражение в виде строки и два параметра целого типа, использует библиотеку SymPy для его парсинга и вычисления, а затем выводит результат.
Программа должна обрабатывать простые арифметические операции, такие как сложение, вычитание, умножение и деление, а также возведение в степень.
✓ 21✗ 68600лёгкаяВойти и решать
Успешно решив раньше времени контрольную работу по математике, Тимофей выбрал на клетчатой бумаге квадрат со стороной n клеток и стал заполнять его «змейкой» от левого верхнего угла так, как показано на рисунке. Определите длину проведённых линий.

Формат входных данных
Единственная строка входных данных содержит натуральное число n (1 ≤ n ≤ 109 ).
Формат выходных данных
Выведите одно натуральное число — ответ на вопрос задачи.
Обратите внимание, что значение ответа в этой задаче может превышать возможное значение 32-битной целочисленной переменной, поэтому необходимо использовать 64- битные целочисленные типы данных (тип int64 в языке Pascal, тип long long в C++, тип long в Java и C#).
Трое друзей — Аня, Боря и Саша — пришли на детскую площадку, чтобы покачаться на качеляхбалансире. Качели представляют собой длинную балку, закреплённую в центре, на которую дети садятся с разных концов.

Массы детей равны A, B и C кг. Чтобы держать баланс на качелях, разница масс на двух концах качелей должна быть не более D кг. Друзьям повезло: рядом с площадкой оказалась груда достаточно тяжёлых камней. Один из детей может взять с собой любой камень, чтобы сделать разность масс на концах качелей допустимой. Помогите друзьям определить минимальную массу камня, благодаря которому они смогут покачаться на качелях.

Формат входных данных
Программа получает на вход три числа A, B, C, записанных в отдельных строках, — массы друзей. В четвёртой строке записано число D — наибольшая допустимая разница масс на концах качелей. Все числа — целые, положительные и не превосходящие 109 .

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

Замечание
В первом примере Аня и Саша сядут на одну сторону, их суммарная масса будет равна 65 кг. На другую сторону сядет Боря, взяв 15-килограммовый камень, тогда масса Бори с камнем составит 55 кг. Разница весов на концах качелей примет значение 10 кг. Во втором примере Аня и Боря сядут на одну сторону (50 кг), Саша — на другую сторону (45 кг). Разница весов будет равна 5 кг, поэтому камень не понадобится.
1631 - 7#60302
Дано натуральное число N. Фрагмент алгоритма 
int M, N;
cin >> N;
M = 0;
while (N != 0) {
    if ((N % 10) % 2 != 0) M++;
    N = N / 10;
}
cout << M;
  1. находит количество четных цифр в числе;

  2. находит количество нечетных цифр в числе;

  3. находит сумму четных цифр числа;

  4. находит произведение нечетных цифр числа.

В левом-нижнем углу квадратной клетчатой доски размером \(n\times m\) стоит \(k\)-кузнечик. За один ход \(k\)-кузнечик перемещается по доске вправо, вверх или вправо-вверх по диагонали не более чем на \(k\) клеток.

image
Возможные ходы \(k\)-кузнечика для \(k = 3\).

Необходимо передвинуть \(k\)-кузнечика в правый верхний угол доски в клетку \((n, m)\). За какое минимальное число ходов можно передвинуть \(k\)-кузнечика из клетки \((1, 1)\) в клетку \((n, m)\)?

Формат входных данных
В первой строке заданы три целых числа \(n\), \(m\) и \(k\) — размеры сторон доски и максимальное число клеток, на которое может ходить \(k\)-кузнечик, соответственно (\(1 \le n, m, k \le 10^9\)).

Формат выходных данных
Выведите одно число — минимальное число ходов, необходимое, чтобы передвинуть \(k\)-кузнечика из клетки \((1, 1)\) в клетку \((n, m)\).

Напишите программу, которая выполняет глобальное выравнивание двух ДНК-последовательностей, и выводит все выравнивания и их score (балл).

Формат входных данных
Две строки содержит две последовательности ДНК, далее вводятся настройки параметров:
  • Балл за совпадение
  • Балл за несовпадение
  • Балл за открытие гэпа
  • Балл за продолжение гэпа
Формат выходных данных
Выведите все выравнивания.

Напишите программу, которая выполняет глобальное выравнивание двух ДНК-последовательностей, и выводит все выравнивания и их score (балл).

Формат входных данных
Две строки содержит две последовательности ДНК.
Формат выходных данных
Выведите все выравнивания и их score (балл).
Весы#59831

У учителя физики есть четыре гири и чашечные весы. Он пытается заставить весы находиться в равновесии, поставив все гири на чашки весов. Весы находятся в равновесии, если суммарный вес гирь на обеих чашках одинаковый.

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

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

Формат выходных данных
Если уравновесить весы невозможно, выведите единственное число \(-1\).

Иначе выведите две строки. На первой строке выведите веса гирь, которые необходимо разместить на левой чаше весов. На второй строке выведите веса гирь, которые необходимо разместить на правой чаше весов.

Если есть несколько способов уравновесить весы, можно вывести любой из них.

На жидкокристаллическом дисплее с разрешением \(h\times w\) используются пиксели трех цветов: красного, зеленого и синего. Будем обозначать их заглавными английскими буквами ‘R’, ‘G’ и ‘B’, соответственно.

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

В первой строке первый пиксель <<R>>, а каждая следующая строка сдвинута на один налево относительно предыдущей: во второй первый пиксель <<G>>, а второй <<B>>, в третьей первый пиксель <<B>>, в четвертой первый пиксель <<G>>, а второй <<R>>, и так далее.

Выведите, как расположены пиксели на экране.

Формат входных данных
На вход подаются целые числа \(h\) и \(w\), по одному на строке (\(1 \le h, w \le 100\)).

Формат выходных данных
Выведите \(h\) строк по \(w\) символов — цвета пикселей на дисплее.

Напишите программу, которая преобразовывает ДНК в РНК и обратно. Надо проверить, совпадают ли исходная ДНК и обратно транскрибированная ДНК.
Формат входных данных
Единсвенная строка содержит последовательность ДНК.

Формат выходных данных
Выведите Yes если исходная ДНК и обратно транскрибированная ДНК совпадают и No если не соврадают.
✓ 19✗ 13500лёгкаяВойти и решать
Напишите программу, которая преобразовывает РНК в белковую последовательность, подсчитывает длину и количество определённых аминокислот (L).
Формат входных данных
Единсвенная строка содержит последовательность РНК.

Формат выходных данных
Запишите три строки, являющиеся ответами на задания задачи соответственно: 
1) Белковая последовательность.
2) Длина цепи.
3) Колличество аминокислот L.
✓ 29✗ 29300лёгкаяВойти и решать
Напишите программу, которая анализирует последовательность ДНК.
Формат входных данных
Единственная строка содержит последовательность ДНК.

Формат выходных данных
Запишите четыре строки, являющиеся ответами на задания задачи:
1) Длина последовательности.
2) Комплементарную цепь.
3) Обратная комплементарная цепь
4) Транскрипцию последовательности (преобразование ДНК в РНК).
✓ 34✗ 56400лёгкаяВойти и решать
Дед мороз получил очень странное послание! Помогите ему. Напишите программу, которая выводит это сообщение в понятной форме 

–Т—Л–≤–µ–і–Є—В–µ –і–≤–∞–і—Ж–∞—В—М –њ–µ—А–≤—Л—Е –њ—А–Њ—Б—В—Л—Е —З–Є—Б–µ–ї
 
Мумми-Тролли, полные энтузиазма, решили установить самую высокую ёлку в Муми-доле. Однако, когда они начали искать подходящее дерево, выяснилось, что в лесу растут ели разной высоты: одна — a метра, другая — b метров, а третья — c метров.

Помогите Муми-тролям выбрать из трех данных ёлок самую высокую! 

Вам дано три целых числа: a, b, c - длины ёлок (по одному числу в строке). Выведите на экран длину той ёлки, которая нужна Муми-тролям.

Кодоны — это триплеты нуклеотидов (три буквы), которые определяют аминокислоты в процессе трансляции (синтеза белка).

  1. Старт-кодон — кодон, с которого начинается считывание белковой последовательности. В ДНК это всегда ATG.
  2. Стоп-кодоны — кодоны, которые сигнализируют окончание считывания. В ДНК это:
    • TAA
    • TAG
    • TGA
 

Надо написать программу, которая:

  1. Находит все стартовые (ATG) и стоп-кодоны (TAA, TAG, TGA) в последовательности ДНК.
  2. Возвращает их позиции (индексы).
Формат входных данных
Строка содержит последовательность ДНК

Формат выходных данных
В первой строке вывести позиции старт-кодонов в порядке возрастания, во второй строке вывести позиции стоп-кодонов в порядке возрастания.
В биоинформатике часто требуется искать и подсчитывать конкретные последовательности нуклеотидов в ДНК. В данной задаче необходимо подсчитать количество повторений триплета "ATG" в заданной последовательности ДНК. Триплет "ATG" является важным мотивом, связанным с началом кодирования белков. Напишите функцию, которая принимает строку, представляющую последовательность ДНК, и возвращает количество вхождений триплета "ATG" в этой последовательности.

Формат входных данных
В единственной строке дана последовательность ДНК
Формат выходных данных
Необходимо подсчитать количество раз, когда встречается триплет ATG.
Последовательность называется палиндромной, если она читается одинаково в прямом и обратном направлении. В биоинформатике проверка палиндромов может быть полезна, например, для анализа определенных участков ДНК, таких как сайты рестрикции, которые часто имеют палиндромную структуру.

Формат входных данных
В единственной строке дана последовательность ДНК
Формат выходных данных
Выведите "Yes" если последовательность является палиндромной и "No" если не является
✓ 64✗ 65600лёгкаяВойти и решать
Поделиться
Класснуть