Задача. Дан текст, каждый символ которого может быть малой буквой, цифрой или одним из знаков +, -, *. Группой букв будем называть такую совокупность последовательно расположенных букв, которой непосредственно не предшествует и за которой непосредственно не следует буква. Аналогично определим группу цифр и группу знаков. Найти самую длинную группу цифр. Если эту наибольшую длину имеет … Continue reading
Ю12.2
Текст, сформированный построчно, выровнять по правому краю так, чтобы каждая строка заканчивалась знаком препинания или одним пробелом. Выравнивание осуществить, вставляя дополнительные пробелы между словами(равномерно по всей строке). Текст There are many big and small libraries everywhere in our country. They have millions of books in different languages. Every school has a library. Pupils come to … Continue reading
Ю12.34
Задача. «Балда». Для заданного достаточно длинного слова найти в имеющемся словаре все слова, в которых использованы только буквы, имеющиеся в заданном слове (с учетом кратности вхождения). Тесты. Ввод Вывод Комментарий programming a in on go no an man am or arm air ring ago pain grin rain mom main among roar grip pair rip map … Continue reading
Ю12.13
Задача Морзянка. Вводимый с клавиатуры или из файла текст перевести в последовательность точек и тире с помощью азбуки Морзе. Результат можно иллюстрировать звуком. Тесты: Текст Результат Комментарий SOS …—… пройден A true SOS !!! .- -…- — .-. ..- . -…- … — … -…- —..— —..— —..— -…- пройден Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
#include <iostream> #include <string> #include <map> #include <cctype> using namespace std; map <char, string> morze = { { 'a', ".-"}, { 'b', "-..."}, { 'w', ".--"}, { 'g', "--."}, { 'd', "-.."}, { 'e', "."}, { 'v', "...-"}, { 'z', "--.."}, { 'i', ".."}, { 'j', ".---"}, { 'k', "-.-"}, { 'l', ".-.."}, { 'm', "--"}, { 'n', "-."}, { 'o', "---"}, { 'p', ".--."}, { 'r', ".-."}, { 's', "..."}, { 't', "-"}, { 'u', "..-"}, { 'f', "..-."}, { 'h', "...."}, { 'c', "-.-."}, { 'q', "--.-"}, { 'y', "-.--"}, { 'x', "-..-"}, { '1', ".----"}, { '2', "..---"}, { '3', "...--"}, { '4', "....-"}, { '5', "....."}, { '6', "-...."}, { '7', "--..."}, { '8', "---.."}, { '9', "----."}, { '0', "-----"}, { '.', "......"}, { ',', ".-.-.-"}, { ':', "---..."}, { ';', "-.-.-."}, { '(', "-.--.-"}, { ')', "-.--.-"}, { '"', ".-..-."}, { '-', "-....-"}, { '/', "-..-."}, { '?', "..--.."}, { '!', "--..--"}, { ' ', "-...-"}, { '@', ".--.-."}, }; int main() { string text; while(cin >> text) { for(int i = 0; i < text.length(); i++) { text[i] = tolower(text[i]); cout << morze.find( text[i] )->second <<" "; } cout << morze.find(' ')->second << " "; } return 0; } |
Я создала … Continue reading
Ю12.31
Задача: строка содержит арифметическое выражение, состоящее из целых чисел и знаков операции: [latex]+,-,*,/[/latex] (без скобок). Проверить корректность выражения (в смысле последовательности чисел и знаков операции) Тесты: Выражение Ответ Комментарий -1+2-3/4*5 Верно Работает -1 Верно Работает -1/-4 Верно Работает 5—4 Верно Работает 1 Верно Работает 54-*3//6 Ошибка Работает. Неправильная последовательность 5/0+42 Ошибка Работает. Деление на ноль … Continue reading
Ю12.20
Задача: В имеющемся словаре найти пары слов ( анаграммы), при прочтении каждого из которых в обратном направлении образуется другое слово пары. Ввод Вывод qwerty ytrewq av ab va tg qwerty — ytrewq av — va 12345 45 67 54 123567 543 54321 12345 — 54321 45 — 54
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
#include <iostream> #include <vector> using namespace std; int main() { vector<string> x; vector<string> r; string t; int k = 0; while(getline(cin, t)) { x.push_back(t); } for(int i=0; i <(int) x.size(); i++) { string g, f=""; g=x[i]; for (int j=g.length()-1 ; j>=0 ; j--) f+= x[i][j]; for(int j=i+1; j < (int)x.size(); j++) { if (f==x[j]) { r.push_back(x[i]+" - "+f); } } } for(int i=0; i <(int) r.size(); i++) { cout<<r[i]<<endl; } return 0; } |
Записываем каждое слово словаря … Continue reading
М4. НАМ
Написать исполнитель нормальных алгоритмов Маркова для заданного алфавита. Ввод Вывод Комментарий abbbcaa aa->a bb->b cc->c abca Пройдено x *x->xx* *=> ->* xx Пройдено cbabca ba->ab cb->bc ca->ac aabbcc Пройдено Прочитав строку и команды нам нужно разделить каждую команду на три элемента: ключ, значение, boolean-переменная (отвечает на вопрос: «Конечная ли команда?»). Последняя переменная нужна для того … Continue reading
Ю12.43
Задача: Для двух заданных строк символов найти самую длинную общую подстроку. Пробелы и знаки препинания игнорировать, строчные и прописные буквы считать неразличимыми. Например, строки: «Дай вилку! Бок севрюжий кончается» и «Чемпионский кубок достался не нам» содержат общую подстроку «кубок». Строка а Строка b Результат Комментарий Q_+wer ty q!w ert) q qwert Тест пройден `Curiouser and … Continue reading
A393a
Задача. Даны натуральное число [latex]n[/latex], целочисленная квадратная матрица порядка [latex]n[/latex]. Получить [latex]{b}_{1}[/latex],…,[latex]{b}_{n}[/latex], где [latex]{b}_{i}[/latex] — это наименьшее из значений, элементов находящихся в начале i-й строки матрицы до элемента, принадлежащего главной диагонали, включительно. 4 4 3 2 1 4 3 2 1 4 3 2 1 4 3 2 1 4 3 2 1 Пройдено 4 … Continue reading
А410в
Дана целочисленная матрица[latex][a_{ij}]_{i,j=1,…,n}[/latex] . Получить [latex]b_{1},…,b_{n}[/latex], где [latex]b_{i}[/latex] — это [latex]\prod_{j=1}^{n}a_{ij}[/latex]; Матрица Результат 4 1 4 6 -5 -120 5 7 8 7 1960 1 2 5 9 90 5 5 0 3 0
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> using namespace std; int main() { int n; cin >> n; int a[n][n]; for(int i=0; i<=(n-1); i++){ for(int j=0; j<=(n-1); j++){ cin >> a[i][j]; } } int b[n]; for(int i=0; i<=(n-1); i++){ b[i]=1; for(int j=0; j<=(n-1); j++){ b[i]=b[i]*a[i][j]; } } for(int i=0; i<=(n-1); i++){ cout << b[i] << " "; } return 0; } |
Для начала прочитаем матрицу из потока ввода используя цикл for. Потом создадим цикл, в котором сначала будем присваивать каждому [latex]b_{i}[/latex] … Continue reading
М6a
а) Чётные числа из стандартного потока ввода поместить в хранилище с именем [latex]Even[/latex], а нечётные —[latex]Odd[/latex]. Во входном потоке неизвестное количество целых чисел через пробел. Поток ввода Результат 4 8 15 16 23 42 4 8 16 4215 23 0 1 1 2 3 5 8 13 21 34 55 89 144 0 2 8 … Continue reading
Какой треугольник?
Задача: 905. Какой треугольник? с сайта http://www.e-olimp.com.ua Определить вид треугольника (равносторонний, равнобедренный, разносторонний) по заданным длинам его сторон. Существование треугольника и корректность исходных данных гарантируется. Технические условия Входные данные В единственной строке задано 3 целых числа — длины сторон треугольника. Длины сторон не превышают 100. Выходные данные В единственной строке вывести 1, если треугольник равносторонний, 2 если … Continue reading
А137г
Даны натуральное число [latex]n[/latex], действительные числа [latex]a_{1}, a_{2}, \ldots a_{n}[/latex]. Вычислить: [latex]a_{1},-a_{1}a_{2},a_{1}a_{2}a_{3}, \ldots (-1)^{n+1}a_{1}a_{2} \ldots a_{n}[/latex]. Решение. Вводим переменную [latex]n[/latex], переменную [latex]a[/latex](куда будем считывать наши числа), а так же [latex]f[/latex]-произведение введенных чисел. Каждый раз в цикле уже введенные числа умножаются на следующее число взятое с противоположным знаком, а изначально «f» равна «[latex]-1[/latex]» так как «Очередное произведение отличается … Continue reading
A116г
Даны натуральное число [latex]n[/latex] и действительное число [latex]x[/latex]. Вычислить: [latex]\prod_{k=1}^{n}(1+\frac{sin(kx)}{k!})[/latex] Вводим переменную [latex]x[/latex] и [latex]n[/latex], помимо них введем переменную для вычисления факториала [latex]k[/latex] и ту, которая будет вычислять произведение в цикле. Создаем цикл по [latex]k[/latex] от 1 до [latex]n[/latex], проводим в нем все вычисления и вне цикла выводим результат. Тесты: [latex]n[/latex] [latex]x[/latex] Результат: 2 5.89 0.39856 9 -300.001 1.65069 3 199 … Continue reading
Ю3.23
Текущее среднее. Числа [latex]x_{1},x_{2},..[/latex] последовательно поступают с устройства ввода. Все числа хранить в памяти нет необходимости; после ввода каждого числа нужно вычислить и напечатать среднее значение всех введенных чисел: [latex]S_{n}=\frac{1}{n}\sum_{k=1}^{n}x_{k}[/latex]. Вводим переменную равную нулю, которую в дальнейшем используем в цикле для вычисления суммы всех введенных чисел, переменную которая будет обозначать количество чисел и конечно же … Continue reading
А403б
Задача:Дана целочисленная квадратная матрица порядка 15. Выяснить, имеются ли в матрице ненулевые элементы, и если имеются, то указать индексы всех ненулевых элементов. Тесты: Введенная матрица Индексы ненулевых элементов 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 … Continue reading
М16. Freshly Pressed Juice
Формулировка задачи Известно, что каждый посетитель фруктового бара просит сделать наиболее дешевый коктейль из свежевыжатого сока. Объем стакана для сока V. Рассчитайте стоимость и сформируйте рецепт коктейля, который достанется n-тому посетителю. V и n читаются из входного потока. Во входном потоке имеется неизвестное количество строк – справочник в котором для каждого вида фруктов указано его … Continue reading
Ю11.8
Метод Симпсона. Вычислить определённый интеграл [latex]I=\int_{a}^{b}{f\left(x \right)}dx[/latex] по формуле Симпсона: [latex]I\approx \frac{b-a}{6n}\left(y_{0}+4y_{1}+2y_{2}+\cdot \cdot \cdot +4y_{2n-1}+y_{2n} \right)[/latex], где [latex]2n[/latex] — количество отрезков разбиения, [latex]y_{0}[/latex], [latex]y_{1}[/latex], …, [latex]y_{2n}[/latex] — значение функции [latex]f\left(x \right)[/latex] на концах отрезков. В задачах на численное интегрирование определённый интеграл требуется найти с заданной точностью, для чего вычисление по формуле метода рекомендуется проводить многократно, каждый раз уменьшая … Continue reading
A119в
Задача Вычислить бесконечную сумму с заданной [latex]\left(\varepsilon>0\right)[/latex]. Считать что требуемая точность достигнута если очередное слагаемое оказалось по модулю меньше, чем [latex]\varepsilon[/latex] ,это и все последующие слагаемые можно уже не учитывать. Вычислить: [latex]\sum _{i=1}^{\infty}{\frac{{-1}^{i}}{i!}}[/latex] Код C++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#include <iostream> #include <math.h> using namespace std; int main() { double E = 1e-5; double x = -1; double sum = 0.0; for(int i = 2; fabs(x) > E ; i++){ sum += x; x *= (-1./i); } cout << endl << sum; return 0; } |
Код C++ на Ideone: http://ideone.com/jIBbYb Код Java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
import java.util.*; import java.lang.*; import java.io.*; import java.math.*; class InfiniteSum { public static void main (String[] args) throws java.lang.Exception { //Scanner read = new Scanner(System.in); double E = 1e-1; double x = -1; double sum = 0.0; for(int i = 2; Math.abs(x) > E ; i++){ sum += x; x *= (-1./i); } System.out.print("Сумма = "+sum); } } |
Код Java на Ideone: A119в. Комментарии Вычисляем бесконечную сумму с точностью до [latex]\varepsilon[/latex]. … Continue reading
А137е
Даны натуральные [latex] n[/latex], действительные [latex] a_{1},\ldots,a_{n}[/latex]. Вывести: [latex] a_1+1!, a_2 +2!, …, a_n+n![/latex]. n a1 a2 a3 a4 Input: 4 1 2 3 4 Output: 2.00 4.00 9.00 28.00 Input: 4 0.1 0.2 0.3 0.4 Output: 1.10 2.20 6.30 24.40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
#include <iostream> using namespace std; int main() { int n; double a,fact=1.0; scanf("%d",&n);//читаем n for(int k=1;k<=n;k++) { scanf("%lf",&a);//читаем из потока k-ый элемент fact*=k;//увеличиваем фаториал printf("%.2lf ",(a+fact));//выводим сумму цифры из потока и факториала } return 0; } |
Описываем переменную факториала и переменную из потока типа [latex]double[/latex]. Запускаем цикл [latex]for[/latex], от … Continue reading