Тренировка S03

Время тестирования приведено для Intel Celeron 400.
Решения должны быть представлены на Turbo Pascal 7.0. Объём памяти, предоставляемый программе, составляет 500 кб.


        Задача A. Разложение на простые множители

Вывести представление целого числа N в виде произведения простых чисел.
Ограничения: 2 <= N <= 231 - 1, время 2 с.
Ввод из файла pfactor.in. В первой строке находится единственное число N.
Вывод в файл pfactor.out. Выводится список чисел в порядке неубывания, разделённых знаком "*".
Примеры
Ввод 1    Ввод 2
5         30
Вывод 1   Вывод 2
5         2*3*5

        Задача B. Перестановки (2)

Дана строка, состоящая из M символов. Вывести все перестановки символов данной строки.
Ограничения: 2 <= M <= 8, символы - буквы латинского алфавита и цифры, время 1 с.
Ввод из файла permut2.in. В первой строке файла находится исходная строка.
Вывод в файл permut2.out. Вывести в каждой строке файла по одной перестановке. Перестановки можно выводить в любом порядке. Повторений и строк, не являющихся перестановками исходной, быть не должно.
Примеры
Ввод 1    Ввод 2
AB        122
Вывод 1   Вывод 2
AB        122
BA        212
          221

        Задача C. Копилка

Задан вес E пустой копилки и вес F копилки с монетами. В копилке могут находиться монеты N видов, для каждого вида известна ценность Pi и вес Wi одной монеты. Найти минимальную и максимальную суммы денег, которые могут находиться в копилке.
Ограничения: 1 <= E <= F <= 10 000, 1 <= N <= 500, 1 <= Pi <= 50 000, 1 <= Wi <= 10 000, все числа целые, время 2 с.
Ввод из файла piggy.in. В первой строке находятся числа E и F, во второй - число N, в следующих N строках - по два числа, Pi и Wi.
Вывод в файл piggy.out. Выводятся два числа через пробел - минимальная и максимальная суммы. Если копилка не может иметь точно заданный вес при условии, что она наполнена монетами заданных видов, - вывести "This is impossible.".
Примеры
Ввод 1      Ввод 2      Ввод 3
1000 1100   1000 1010   1000 2000
2           2           1
1 1         6 3         10 3
5 2         2 2
Вывод 1     Вывод 2     Вывод 3
100 250     10 16       This is impossible.

        Задача D. Открытка и конверт

Даны размеры прямоугольных открытки и конверта. Требуется определить, поместится ли открытка в конверт.
Ограничения: размеры открытки и конверта - целые положительные числа, не превосходящие 100, время 1 с.
Ввод из файла postcard.in. В первой строке находятся размеры открытки, во второй - размеры конверта.
Вывод в файл postcard.out. Если открытку можно вложить в конверт, вывести "Possible", если нет - вывести "Impossible".
Примеры
Ввод 1
1 10
9 9
Вывод 1
Possible

        Задача E. Длинное произведение

Даны целые неотрицательные числа M и N. Найти M*N.
Ограничения: 0 <= MN <= 102500, время 5 с.
Ввод из файла longprod.in. В первой строке находится число M, во второй - N.
Вывод в файл longprod.out. Вывести одно число - результат умножения.
Примеры
Ввод 1
9876543210
1023456789
Вывод 1
10108215200126352690

        Задача F. Змейка

Вывести квадрат, состоящий из NxN ячеек, заполненных числами от 1 до N 2 "змейкой" (см. примеры).
Ограничения: 2 <= N <= 100, время 1 с.
Ввод из файла serpent.in. В первой строке находится единственное число N.
Вывод в файл serpent.out. Выводится N строк по N чисел, разделённых пробелами. Не допускаются начало змейки в другом углу или другое её направление.
Примеры
Ввод 1    Ввод 2         Ввод 3
3         4              5
Вывод 1   Вывод 2        Вывод 3
1 2 6      1  2  6  7     1  2  6  7 15
3 5 7      3  5  8 13     3  5  8 14 16
4 8 9      4  9 12 14     4  9 13 17 22
          10 11 15 16    10 12 18 21 23
                         11 19 20 24 25
Hosted by uCoz