Условие задачи: Для заданного ориентированного графа найти количество ребер в его конденсации. Конденсацией орграфа G называют такой орграф G’, вершинами которого служат компоненты сильной связности G, а дуга в G’ присутствует только если существует хотя бы одно ребро между вершинами, входящими в соответствующие компоненты связности. Конденсация графа не содержит кратных ребер. Входные данные: Первая строка … Continue reading
6130. Дек неограниченного размера
Условие задачи: Реализуйте структуру данных «дек». Напишите программу, содержащую описание дека и моделирующую работу дека, реализовав все указанные здесь методы. Программа считывает последовательность команд и в зависимости от команды выполняет ту или иную операцию. После выполнения каждой команды программа должна вывести одну строчку. Возможные команды для программы: push_front Добавить (положить) в начало дека новый элемент. … Continue reading
Ю 2.27. Шашечный эндшпиль
Задача из сборника задач по программированию Юркина А.Г. 2002 г. Условие задачи: В шашечном эндшпиле остались белая дамка и две черных пешки, позиции которых известны. Ход белых. Сможет ли дамка срубить одну или сразу обе пешки? Related Images:
e-olymp 4493. Трое из Простоквашино 3
Задача [latex]-[/latex] Печкин, а я научился работать с деревом отрезков. [latex]-[/latex] Заняться тебе нечем просто, Шарик. Лучше бы помог мне письма разносить. [latex]-[/latex] Ну, Печкин, я уже даже выполнил задания Дяди Федора и Кота Матроскина, только этот Матроскин не захотел проверять, правильно ли я сделал. [latex]-[/latex] Ну ладно, давай я проверю, что там надо было … Continue reading
e-olymp 7447. Обрезка строки
Задача с сайта e-olymp.com. Условие задачи Имеется строка [latex]s[/latex]. Разрешается взять два любых одинаковых соседних символа и удалить их из строки. Эту операцию можно производить пока имеется возможность. Сначала Вы можете выбрать любое количество символов в строке и удалить их. Определить наименьшее количество символов, которое Вы можете удалить сначала так, чтобы затем выполняя разрешенную операцию, … Continue reading
e-olymp 1078. Степень строки
Задача Обозначим через [latex]a \cdot b[/latex] конкатенацию строк [latex]a[/latex] и [latex]b[/latex]. Например, если [latex]a =[/latex]«abc» и [latex]b =[/latex]«def» то [latex]a \cdot b =[/latex]«abcdef». Если считать конкатенацию строк умножением, то можно определить операцию возведения в степень следующим образом: [latex]a^{0} =[/latex]«» (пустая строка) [latex]a^{n+1} = a \cdot a^{n}[/latex] По заданной строке [latex]s[/latex] необходимо найти наибольшее значение [latex]n[/latex], … Continue reading
Chuck Norris
A task from codingame.com Task Binary with 0 and 1 is good, but binary with only 0, or almost, is even better! Originally, this is a concept designed by Chuck Norris to send so called unary messages. Write a program that takes an incoming message as input and displays as output the message encoded using Chuck … Continue reading
e-olymp 4496. Приключение Незнайки и его друзей
Задача с сайта e-olymp.com. Условие задачи Все мы помним историю о том, как Незнайка со своими друзьями летали на воздушном шаре путешествовать. Но не все знают, что не все человечки влезли в шар, так как у него была ограниченная грузоподъемность. В этой задаче Вам необходимо узнать, сколько же человечков улетело путешествовать. Известно, что посадка в … Continue reading
e-olymp 131. Слова
Задача Из слова «молоко» можно составить слово «коло». Сколько слов из заданного словаря можно составить, используя буквы заданного слова, причем каждую букву можно использовать не более одного раза. Тесты Входные данные Выходные данные молоко 4 мило коло коліно око 2 приветствие 8 ветер треск спирт трепет перерыв север текст привести 5 Код программы на С++ … Continue reading
A302. Количество различных цифр числа в его десятичной записи
Задача Дано натуральное число [latex]N[/latex]. Сколько различных цифр встречается в его десятичной записи? Входные данные Натуральное число [latex]N[/latex]. Выходные данные Количество различных цифр [latex]sum[/latex]. Тесты Входные данные Выходные данные [latex]N[/latex] [latex]sum[/latex] 12345678900987654321 sum:10 302 sum:3 Код программы с использованием deque
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
#include <iostream> #include <deque> using namespace std; int main(){ deque<int> folder; unsigned long long N; cin >> N; folder.push_back(N%10); N/=10; while (N!=0){ for (int i=0; i<folder.size(); i++){ if (folder.at(i) == N%10) i+=folder.size(); if (i == folder.size() -1) folder.push_back(N%10); } N/=10; } cout << "sum:" << folder.size(); return 0; } |
Решение Создадим дэк [latex]folder[/latex] в котором будем хранить различные цифры десятичной записи. Добавляем … Continue reading
e-olymp 6128. Простой дек
Задача Реализуйте структуру данных «дек». Напишите программу, содержащую описание дека и моделирующую работу дека, реализовав все указанные здесь методы. Программа считывает последовательность команд и в зависимости от команды выполняет ту или иную операцию. После выполнения каждой команды программа должна вывести одну строчку. Возможные команды для программы: push_front Добавить (положить) в начало дека новый элемент. Программа должна … Continue reading
A272. Количество осадков
Задача Даны действительные числа [latex]a_{1}, a_{2}, …, a_{n}[/latex] – количество осадков (в миллиметрах), выпавших в Москве в течение [latex]n[/latex] лет. Вычислить среднее количество осадков [latex]average[/latex] и отклонение от среднего для каждого года [latex]d_{1}, d_{2}, …, d_{n}[/latex]. Входные данные: Последовательность действительных чисел. Выходные данные: Среднее количество осадков [latex]average[/latex]. Последовательность действительных чисел [latex]d_{1}, d_{2}, …, d_{n}[/latex] — … Continue reading
e-olymp 1521. Оптимальное умножение матриц
Задача Имея два двумерных массива [latex]A[/latex] и [latex]B[/latex], мы можем вычислить [latex]C = AB[/latex] используя стандартные правила умножения матриц. Число колонок в массиве [latex]A[/latex] должно совпадать с числом строк массива [latex]B[/latex]. Обозначим через [latex]rows(A)[/latex] и [latex]columns(A)[/latex] соответственно количество строк и колонок в массиве [latex]A[/latex]. Количество умножений, необходимых для вычисления матрицы [latex]C[/latex] (ее количество строк совпадает … Continue reading
e-olymp 1075. Умножение многочленов
Задача с сайта e-olymp.com. Засчитанное решение. (C++) Засчитанное решение. (Java) Условие задачи Вводится в символьной форме два многочлена от [latex]x[/latex] с целыми коэффициентами. Вывести их произведение в порядке убывания степеней — также в символьной форме. Степень исходных многочленов не более [latex]10[/latex], коэффициенты исходных многочленов по модулю не более [latex]{ 10 }^{ 4 }[/latex]. Входные данные … Continue reading
А273. Центр тяжести системы
Задача. Задача из сборника задач по программированию С.А.Абрамова за 2000 год. Система из 25 материальных точек в пространстве задана с помощью последовательности действительных чисел [latex]x_{1}, y_{1}, z_{1}, p_{1}, x_{2}, y_{2}, z_{2}, p_{2},\ldots,x_{25}, y_{25}, z_{25}, p_{25}[/latex], где [latex]x_{i}, y_{i}, z_{i}[/latex] — координаты [latex]i[/latex]-ой точки, а [latex]p_{i}[/latex] — ее вес ([latex]i=1,2,\ldots,25[/latex]). Получить координаты центра тяжести системы, а … Continue reading
e-olymp 3358. Чёрный ящик
Задача В черный ящик кладутся листки с написанными на них числами. На каждом листке — ровно одно целое число. Иногда некоторые листки исчезают из ящика. После каждого события (когда в ящик положили листок, или когда из ящика исчез листок), нужно вывести число, которое встречается чаще всего на листках, находящихся в данный момент в ящике. Если … Continue reading
А282(а)
Задача Даны действительные числа [latex]a_1,a_2, …,a_{2n}[/latex]. Получить: [latex]a_1,a_{n+1},a_2,a_{n+2}, …,a_n,a_{2n}[/latex] Тесты Ввод Вывод 1 2 3 4 5 6 7 8 9 10 1 6 2 7 3 8 4 9 5 10 8 25 3 7 8 3 25 7 5.5 6.025 2.387 1.0986 7.762 3.5958 5.5 1.0986 6.025 7.762 2.387 3.5958 Хороший код
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
#include <iostream> #include <vector> using namespace std; int main() { vector <double> s; vector <double> l; double a,n; while(cin>>a) { s.push_back(a); } n=s.size()/2; for(int i=0;i<n;i++) { l.push_back(s.at(i)); l.push_back(s.at(i+n)); } for(int i=0;i<l.size();i++) { cout<<l.at(i)<<" "; } return 0; } |
Решение Считываем действительные … Continue reading
e-olymp 595. Новый Лабиринт Амбера
Задача с сайта e-olymp.com Условие задачи Как-то Корвину – принцу Амбера, по каким-то важным делам срочно понадобилось попасть в самую далекую тень, которую он только знал. Как всем известно, самый быстрый способ путешествия для принцев Амбера – это Лабиринт Амбера. Но у Корвина были настолько важные дела, что он не хотел тратить время на спуск … Continue reading
A274. Среднее арифметическое всех членов последовательности, кроме одного
Задача из сборника задач по программированию Абрамова С.А. 2000г. Даны действительные числа [latex]a_{ 1 }[/latex],…,[latex]a_{ 20 }[/latex]. Получить числа [latex]b_{ 1 }[/latex],…,[latex]b_{ 20 }[/latex], где [latex]b_{ i }[/latex] – среднее арифметическое всех членов последовательности [latex]a_{ 1 }[/latex],…,[latex]a_{ 20 }[/latex], кроме [latex]a_{ i }[/latex] ([latex]i[/latex] = 1,2,…,20). Обобщим задачу для последовательности длины [latex]n[/latex] Даны действительные числа … Continue reading
Универсальное дерево отрезков
Некоторые теоретические сведения Обобщённое условие задач на дерево отрезков, как правило, выглядит так: «Пусть дан моноид [latex]\left(\mathbb{G}, \circ\right)[/latex], где [latex]\mathbb{G}[/latex] — некоторое непустое множество, [latex]\circ[/latex] — ассоциативная бинарная алгебраическая операция на этом множестве, имеющая нейтральный элемент, [latex]A[/latex] — последовательность (массив) элементов из [latex]\mathbb{G}[/latex], содержащая [latex]n[/latex] элементов ([latex]n \in \mathbb{N}[/latex]; с математической точки зрения [latex]A[/latex] — … Continue reading