Задача Таблица футбольного чемпионата задана квадратной матрицей порядка [latex]n[/latex], в которой все элементы, принадлежащие главной диагонали, равны нулю, а каждый элемент, не принадлежащий главной диагонали, равен [latex]2[/latex], [latex]1[/latex] или [latex]0[/latex] (числу очков, набранных в игре: [latex]2[/latex]- выигрыш, [latex]1[/latex]- ничья, [latex]0[/latex]- проигрыш). б) Определить номера команд, прошедших чемпионат без поражений. Количество команд. Турнирная таблица. Номера команд, прошедшие турнир … Continue reading
Ю4.9
Задача: В матрице [latex]A\left(m,n \right)[/latex] все ненулевые элементы заменить обратными по величине и противоположными по знаку. Тесты: n m Введенная матрица Полученная матрица 3 4 2 0 3 6 1 0 1 2 9 0 7 8 -0.5 0 -0.333333 -0.166667 -1 0 -1 -0.5 -0.111111 0 -0.142857 -0.125 3 4 0 0 0 0 0 0 0 0 … Continue reading
A405
Задача Даны натуральное число [latex]n[/latex], действительная квадратная матрица порядка [latex]n[/latex]. Построить последовательность [latex] b_1,..,b_n[/latex] из нулей и единиц, в которой [latex] b_i = 1[/latex] тогда и только тогда, когда в [latex]i[/latex] — строке матрицы есть хотя бы один отрицательный элемент. Тест при [latex]n = 3[/latex] [latex]b_1[/latex] [latex]b_2[/latex] [latex]b_3[/latex] результат 0 0 0 0 1 0 … Continue reading
Ю12.36
Задача: Разнобуквица. Из имеющегося словаря выбрать наиболее длинное слово, в котором все буквы разные, например: ЛЕЙКОПЛАСТЫРЬ, НЕРЯШЛИВОСТЬ, ЧЕТЫРЁХДЮЙМОВКА. Тесты: Словарь Результат Комментарий There, here, the, then then Пройден Список 2500 наиболее употребительных английских слов background Пройден Код:
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 |
#include <iostream> #include <string> using namespace std; int main() { string s, max; // Оригинал, копия, самое длинное слово int n = 0; //Счетчик размерности слова while (cin >> s) { while(!isalpha(s[0])) s.erase(0,1); // Строка не будет while(!isalpha(s[s.length()-1])) s.pop_back(); // просматривать знаки препинания и т.п. bool x = 1; //Создаем булеву переменную for (int i = 0; i < s.length(); i++) //Создаем 2 цикла для проверки на повторение for (int j = i+1; j < s.length(); j++)//каждой буквы в слове. if (s[i] == s[j]) { //Если одна из букв встречается больше одного раза x = 0; //в одном слове, присваиваем х значение "false" и break; // прерываем цикл проверки. } if(x && s.length() > n) { //Если же значение х "true", то присваиваем максимально n = s.length(); // длинное слово max. max = s; } } cout << max; //Выводим результат. return 0; } |
Для того что бы найти искомое слово создаем две строки, одна для ввода словаря, другая для результата. Создаем … Continue reading
M2. Brainfuck
Задача Написать интерпретатор языка Brainfuck для памяти на n ячеек. Ячейки хранят значения типа char. Тесты Название программы Ввод (программа на Brainfuck) Вывод Hello World!
1 |
++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>. |
1 |
Hello World! |
Числа Фибоначчи
1 2 3 4 5 6 |
>++++++++++>+>+[ [+++++[>++++++++<-]>.<++++++[>--------<-]+<<<]>.>>[ [-]<[>+<-]>>[<<+>+>-]<[>+<-[>+<-[>+<-[>+<-[>+<-[>+<- [>+<-[>+<-[>+<-[>[-]>+>+<<<-[>+<-]]]]]]]]]]]+>>> ]<<< ] |
Факториалы
1 2 3 4 |
>++++++++++>>>+>+[>>>+[-[<<<<<[+<<<<<]>>[[-]>[<<+>+>-]<[>+<-]<[>+<-[>+<-[> +<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>[-]>>>>+>+<<<<<<-[>+<-]]]]]]]]]]]>[<+>- ]+>>>>>]<<<<<[<<<<<]>>>>>>>[>>>>>]++[-<<<<<]>>>>>>-]+>>>>>]<[>++<-]<<<<[<[ >+<-]<<<<]>>[->[-]++++++[<++++++++>-]>>>>]<<<<<[<[>+>+<<-]>.<<<<<]>.>>>>] |
Код на С++
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 |
#include <iostream> using namespace std; int main() { int n; // Количество ячеек cin >> n; string tape(n,0); int pointer = 0; string program; cin >> program; for (unsigned int i = 0; i < program.length(); i++) { if (program[i] == '>') pointer++; if (program[i] == '<') pointer--; if (program[i] == '+') tape[pointer]++; if (program[i] == '-') tape[pointer]--; if (program[i] == '.') cout << tape[pointer]; if (program[i] == ',') cin >> tape[pointer]; if (program[i] == '[') { if (tape[pointer] == 0) { int counter = 1; while (counter > 0) { i++; if (program[i] == '[') counter++; if (program[i] == ']') counter--; } } } else if (program[i] == ']') { if (tape[pointer] != 0) { int counter = 1; while (counter > 0) { i--; if (program[i] == '[') counter--; if (program[i] == ']') counter++; } } } } return 0; } |
Код на Ideone. Код программы нужно вводить сплошным блоком текста — без переносов строки. Зато можно осуществлять «ввод данных для программы … Continue reading
Ю4.3
Задача: Центрирование массива. От каждого из заданных чисел x1, x2,…, xn отнять их среднее арифметическое. xср= 1/m E от m при i=1 (x1); xi= xi-xср; i=1,2,…, m Результаты разместить на месте исходных данных. Тесты: Введите M (количество элементов в массиве) Введите первое число Введите следующее число Результат Вывод 2 2 5 -1 2 Тест пройден … Continue reading
А99
Задача: Пусть [latex]a_{1}=4[/latex], b1=v, an=2bk-1+ak-1. bk=2a^2k-1+bk-1, k=2,3… Даны действительные u, v, натуральное n. Найти Е от n при k=1 (ak*bk)/(k+1)! Тесты: N U V Результат Вывод 2 4 3 64 тест пройден 1 4 2 4 тест пройден 2 1 2 4 тест пройден 0 3 1 1 тест пройден 1 2 3 3 тест … Continue reading
А402б
Задача Даны натуральное число [latex] n \geq 2 [/latex], действительная квадратная матрица порядка [latex] n [/latex]. Построить последовательность [latex] b_{1}, \ldots, b_{n} [/latex] из нулей и единиц, в которой [latex] b_{i} = 1 [/latex] тогда и только тогда, когда элементы [latex] i [/latex] строки образуют возрастающую или убывающую последовательность. Тесты Ввод Вывод [latex] \begin{pmatrix} 1 … Continue reading
М3
Big Summa. Заданы две текстовые строки, состоящие исключительно из цифр и не более чем одной точки. Предполагается, что строки задают представление чисел в q-ричной системе счисления. Построить строку, являющуюся их суммой. q A B A+B Комментарий. 10 126740 546.967 127286.967 Тест пройден. 8 2360 7521 12101 Тест пройден. 2 1011001 1101 100110 Тест пройден. 3 … Continue reading
А136е
Задача: Даны натуральные числа [latex]n[/latex], действительные числа [latex]a_{1}, a_{2}, \cdots, a_{n}[/latex]. Вычислить [latex]a_{1}+a_{2}+\cdots+a_{n}[/latex] и [latex]a_{1}a_{2}\cdots a_{n}[/latex]. Тест: n [latex]a_{1}, a_{2}, \cdots, a_{n}[/latex] s p Комментарий 2 3 4 7 12 Пройден 4 1 3 5 7 16 105 Пройден 6 2 2 3 3 4 4 18 576 Пройден 1 9 9 9 Пройден
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#include <iostream> #include <math.h> using namespace std; int main() { int n; cin >> n; double s=0, p=1, a; for (int i=1; i<=n; i++) { cin >> a; s+=a; p*=a; } cout << s << endl; cout << p << endl; return 0; } |
Ю3.19
Для заданных [latex]a[/latex] и [latex]p[/latex] вычислить [latex]\sqrt[p]{a}[/latex], используя рекуррентную формулу: [latex]x_{n+1}=\frac{x_{n}}{p^{2}}[(p^{2}-1)+\frac{1}{2}(p+1)\frac{a}{x_{n}^{p}}-\frac{1}{2}(p-1)\frac{x_{n}^{p}}{a}][/latex]; Сколько итераций надо выполнить, чтобы для заданной погрешности [latex]\varepsilon[/latex] было справедливо соотношение [latex]\mid x_{n+1}-x_{n} \mid [/latex] [latex] \leq[/latex][latex]\varepsilon[/latex]?При каких начальных приближениях [latex]x_{0}[/latex] процесс сходится? a p xz eps i xn x Комментарий 16 4 1 0.000001 5 4 4 17 2 2 0.01 3 4.12311 4.12311 26 … Continue reading
А407
Задача: Даны натуральные числа n и m, действительное число r, действительная матрица размера nxm. Получить значение [latex]{b}_{1}{r}^{n-1}+{b}_{2}{r}^{n-2}+\dots+{b}_{n}[/latex], где [latex]{b}_{k}[/latex] — первый по порядку положительный элемент в k-й строке матрицы [latex](k=1,\dots,n)[/latex]; если в k-строке нет положительных элементов, то [latex]{b}_{k}=0.5[/latex]. Тесты: nxm r Матрица Результат Комментарий 2х2 2.5 [latex]\begin{pmatrix} -1 & 1 \\ 1 & 0 \end{pmatrix}[/latex] … Continue reading
А410г
Задача. Дана целочисленная матрица [latex]\left[a_{ij} \right] {i,j=1, \ldots,n}[/latex]. Получить [latex]b_{1}, \ldots,b_{n}[/latex], где [latex]b_{i}[/latex] — это [latex]\sum_{j=1}^{n}{\left|a_{ji} \right|}[/latex]. Тесты. n [latex]\left[a_{ij} \right][/latex] [latex]b_{1}, \ldots,b_{n}[/latex] Комментарий 2 [latex]\begin{pmatrix}1& 4\\-5 & 7\end{pmatrix}[/latex] 6 11 Пройден 3 [latex]\begin{pmatrix}1 & 2 & -3\\-4 & 5 & 6\\7 & -8 & 9\end{pmatrix}[/latex] 12 15 18 Пройден Решение. C++
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 <math.h> using namespace std; int main() { int n; cin >> n; int A[n][n]; for (int i=0;i<n;i++) //ввод матрицы { for(int j=0;j<n;j++) { cin >> A[i][j]; } } int b[n]; for (int i=0;i<n;i++) { b[i]=0; for(int j=0;j<n;j++) { b[i]+=fabs(A[j][i]); //вычисления по формуле } } for (int i=0;i<n;i++) { cout << b[i] << " "; } return 0; } |
Java
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 |
import java.util.*; import java.lang.*; import java.io.*; class Ideone { public static void main (String[] args) { int n; Scanner sc = new Scanner(System.in); n = sc.nextInt(); int[][] A = new int[n][n]; for (int i=0;i<n;i++) //ввод матрицы { for(int j=0;j<n;j++) { A[i][j] = sc.nextInt(); } } int[] b = new int[n]; for (int i=0;i<n;i++) { b[i]=0; for(int j=0;j<n;j++) { b[i]+=Math.abs(A[j][i]); //вычисления по формуле } } for (int i=0;i<n;i++) { System.out.printf("%d ",b[i]); } } } |
Ю4.16
Задача. Все четные элементы целочисленного массива [latex]K(n)[/latex] поместить в массив [latex]L(n)[/latex], а нечетные — в массив [latex]M(n)[/latex]. Подсчитать количество тех и других. Тесты. n K[ ] num of L L[ ] num of M M[ ] Комментарий 6 1 2 3 4 5 6 3 2 4 6 3 1 3 5 Пройден 5 1 … Continue reading
Ю12.19
Задача: В имеющемся словаре найти группы слов, записанных одними и теми же буквами и отличающиеся только их порядком, то есть перестановкой, например, (КОРМА, КОМАР). Код:
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 <stdio.h> #include <algorithm> #include <string> using namespace std; int count_words (string s) //функция подсчитывает слова в строке { s+=' '; int a = 0; for (size_t i=0; i<s.length(); i++) if (s[i]==' ') a++; return a; } string * cut_words (string s) //функция разрезает строку на слова и возвращает массив { s+=' '; int c = 0; int p = 0; int i=0; string *s_return = new string [count_words(s)]; while (s.length() != 0) { if (s[i] != ' ') { c++; i++; } else { i=0; s_return[p] = s.substr(0, c); s.erase(0, c+1); c = 0; p++; } } return s_return; } int main () { string s; getline (cin, s); string *s_return; s_return = cut_words(s); for (int i=0; i<count_words(s); i++) { string s_tmp = s_return[i]; if (s_tmp.empty()) //если ячейка пуста, то продолжаем дальше { continue; } else //а если нет, то ищем перестановки. { int p = 0; for (int j=i+1; j<count_words(s); j++) { if ( is_permutation (s_tmp.begin(), s_tmp.end(), s_return[j].begin())) //если перестановка if (s_tmp.length() == s_return[j].length()) //и если одинаковая длина слов { cout<<s_return[j]<<endl; //выводим на экран s_return[j].clear(); //очищаем строку p++; } } if (p>=1) cout<<s_tmp<<endl; } } return 0; } |
Тесты: Исходный словарь Обработанный словарь the and a to I is of have you he it in not was that his do on with she at say her … Continue reading
Ю3.11
Задача. Получить таблицу пересчета миль в километры и обратно (1 миля=1,609344 км) для расстояний,не превышающих k км, в следующем виде: мили км 0,6214 1,0000 1,0000 1,6093 1,2428 2,0000 1,8641 3,0000 2,0000 3,2187 Тесты. Ввод Вывод k 3 mile km 0.6214 1.0000 1.0000 1.6093 1.2427 2.0000 1.8641 3.0000 7 mile km 0.6214 1.0000 1.0000 1.6093 … Continue reading
А410д
Задача: Дана целочисленная матрица [latex][a_{ij}, i, j =1, … n][/latex]. Получить [latex]b_1, …, b_n[/latex], где [latex]b_i=\prod_ja_{ji}[/latex] для все таких [latex]j[/latex], что [latex]1 < a_{ji} <= n[/latex]; Тесты: [latex]ixj[/latex] a_{ij} [latex]b_1, …, b_n[/latex] Комментарий 3×3 [latex]\begin{pmatrix}1 & 2 & 1 \\ 2 & 1 & 2 \\ 2 & 2 & 1\end{pmatrix}[/latex] 4, 4, 2 Пройден 4×3 [latex]\begin{pmatrix}2 … Continue reading
А136м
Задача. Даны натуральное число [latex]n[/latex], действительные числа [latex]a_{1},…,a_{n}[/latex] . Вычислить: [latex]\sin \left|a_{1}+…+a_{n} \right|[/latex] Тест [latex]n[/latex] последовательность результат (wolframalpha) 1 0 0 1 1000 0.82688 1 -100 0.505366 3 -100 1000 -100 0.89397 5 1 2 3 4 5 0.650287 Я показала , что период не [latex]\pi [/latex] , а [latex]2\pi [/latex] . Период [latex]\pi [/latex] был … Continue reading
А812б
Задача: Дан текст, каждый символ которого может быть малой буквой, цифрой или одним из знаков «+», «-«, «*». Группой букв будем называть такую совокупность последовательно расположенных букв, которой непосредственно не предшествует и за которой непосредственно не следует буква. Аналогично определим группу цифр и группу знаков. Выяснить, верно ли, что в данном тексте больше групп букв, … Continue reading
Ю 4.37
Задача Автостоп-2. Из пункта А в пункт В, между которыми [latex]s[/latex] км, выехал велосипедист с постоянной скоростью [latex]v_{0}[/latex] км/ч. Навстречу ему — из пункта В — другой путешественник решил добраться «автостопом» — на разных видах попутного транспорта. Перед каждым участком он [latex]\tau _{i}[/latex] минут «голосует», ожидая попутного транспорта, затем движется [latex]t _{i}[/latex] часов со скоростью [latex]v _{i}[/latex] км/час ( величины [latex]\tau … Continue reading
Для отправки комментария необходимо войти на сайт.