0 Небольшая задачка по заполнению матрицы змейкой.
OPEN
Напишите код по заполнению матрицы указанным на рисунке способом.
1 Слияние отсортированных массивов.
OPEN
Напишите код по формированию массива из двух других ранее отсортированных массивов. Итоговый массив тоже по итогам слияния должен быть отсортирован, но без использования методов сортировки (это слишком медленно). Смотрите пример на рисунке.
2 Строковый калькулятор.
OPEN
Напишите код, который выполняет арифметические действия "+" и "-". В файле input.txt в первой строке написано выражение типа:
1 + 2 - 14 + 22 =
Разрешнные символы в строке: только цифры, знаки "+" и "-", пробелы (их положение и количество никак не влияет на результат) и завершает строку символ "=".
Программа должна вывести само выражение и результат арифметических действий:
1 + 2 - 14 + 22 = 11
3 Пирамида.
OPEN
Это задание из книги "ООП в С++". Р. Лафоре. стр. 139.
Напишите код, который строит пирамиду из символов "X".
На вход подаётся одно число - высота пирамиды, на выходе - сама пирамида.
4 Решето Эратосфена.
OPEN
Это алгоритм нахождения всех простых чисел до некоторого целого числа n путём фильтрации.
Задача такая: найти с помощью решета Эратосфена кол-во простых чисел до введённого пользователем числа max. Например, ввели 10, ответ = 4 (так как: 2, 3, 5, 7). Простые числа начинаются с 2.
Алгоритм вы видите на анимированной картинке. Сначала записываются все числа от 2 до max. Потом за несколько итераций вычёркиваются все составные числа (оставшиеся будут простыми) по следующим правилам.
На первом шаге установим метку в число k=2 и назначим шаг step=k. Потом, начиная с числа k^2, вычеркнем все числа с шагом step пока не дойдём до max. Потом ставим метку в следующее незачёркнутое число большее k, это будет новое k. Теперь назначаем новый шаг step=k и, как и ранее, вычеркнем все числа, начиная с числа k^2 с шагом step пока не дойдём до max. Так продолжаем до тех пор, пока при переходе на следующий шаг итерации не окажется, что новое k не станет таким, что: k^2>max.
Проверьте свой алгоритм: для max=1000000 ответ 78498.
5 Скобки OPEN
Дана последовательность из N (1<=N<=100000) круглых, квадратных и фигурных скобок. Выяснить, можно ли добавить в неё цифры и знаки арифметических действий так, чтобы получилось правильное арифметическое выражение.
На вход подаётся строка из N символов из набора (, ), [, ], {, }.
На выход нужно подать ответ: "Yes", если получить правильное арифметическое выражение можно, или "No", если нельзя.
Пример:
Вход: ([())]
Выход: No
|