Тренировка S01

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


        Задача A. Простые числа

Вывести все простые числа от M до N включительно.
Ограничения: 2 <= M <= N <= 300 000, время 6 с.
Ввод из файла primes.in. В первой строке находятся разделённые пробелом M и N.
Вывод в файл primes.out. Вывести числа в порядке возрастания, по одному в строке. Если между M и N включительно нет простых - вывести "Absent".
Примеры
Ввод 1    Ввод 2
2 5       4 4
Вывод 1   Вывод 2
2         Absent
3
5

        Задача B. Выражение

Даны N целых чисел X1, X2, ..., XN. Расставить между ними знаки "+" и "-" так, чтобы значение получившегося выражения было равно заданному целому S.
Ограничения: 2 <= N <= 24, 0 <= Xi <= 50 000 000, -1 000 000 000 <= S <= 1 000 000 000, время 3 с.
Ввод из файла expr.in. В первой строке находятся числа N и S. В следующей строке - N чисел через пробел.
Вывод в файл expr.out. Если получить требуемый результат невозможно, вывести "No solution", если можно, то вывести равенство. Если решение не единственное, вывести любое.
Примеры
Ввод 1       Ввод 2
3 10         2 100
15 25 30     10 10
Вывод 1      Вывод 2
15+25-30=10  No solution

        Задача C. Возрастающая подпоследовательность

Даны N целых чисел X1, X2, ..., XN. Требуется вычеркнуть из них минимальное количество чисел так, чтобы оставшиеся шли в порядке возрастания.
Ограничения: 1 <= N <= 10 000, 1 <= Xi <= 60 000, время 4 с.
Ввод из файла incseq.in. В первой строке находится число N. В следующей строке - N чисел через пробел.
Вывод в файл incseq.out. В первой строке выводится количество невычеркнутых чисел, во второй - сами невычеркнутые числа через пробел в исходном порядке. Если вариантов несколько, вывести любой.
Примеры
Ввод 1
6
2 5 3 4 6 1
Вывод 1
4
2 3 4 6

        Задача D. Треугольник и точка

В декартовой системе координат на плоскости заданы координаты вершин треугольника и ещё одной точки. Определить, принадлежит ли эта точка треугольнику.
Ограничения: координаты вершин - целые числа, для любой точки выполняются следующие условия: -10 000 <= xy <= 10 000, время 1 с.
Ввод из файла tria-pt.in. В четырёх строках находятся пары чисел - координаты точек. Числа в первых трёх строках - это координаты вершин треугольника, в четвёртой строке - координаты тестируемой точки.
Вывод в файл tria-pt.out. Вывести слово "In", если точка находится внутри треугольника, или "Out" - если снаружи.
Примеры
Ввод 1    Ввод 2    Ввод 3    Ввод 4
0 0       0 0       0 0       0 0
100 0     100 0     100 0     100 0
0 100     0 100     0 100     0 100
100 100   10 10     50 50     0 0
Вывод 1   Вывод 2   Вывод 3   Вывод 4
Out       In        In        In

        Задача E. Степень

Для натуральных чисел a и n вычислить an.
Ограничения: 1 <= a <= 9, 1 <= n <= 7000, время 5 с.
Ввод из файла power.in. В первой строке находятся разделённые пробелом a и n.
Вывод в файл power.out. Выводится одно число - результат без стоящих впереди нулей, стоящих впереди и позади пробелов.
Примеры
Ввод 1       Ввод 2
3 20         5 50
Вывод 1      Вывод 2
3486784401   88817841970012523233890533447265625

        Задача F. Покер

Даны 5 целых чисел. Среди них:
если одинаковы 5, то вывести "Impossible", иначе
если одинаковы 4, то вывести "Four of a Kind", иначе
если одинаковы 3 и 2, то вывести "Full House", иначе
если есть 5 последовательных, то вывести "Straight", иначе
если одинаковы 3, то вывести "Three of a Kind", иначе
если одинаковы 2 и 2, то вывести "Two Pairs", иначе
если одинаковы 2, то вывести "One Pair", иначе
вывести "Nothing".
Ограничения: все числа от 1 до 13 включительно, время 1 с.
Ввод из файла poker.in. В первой строке находятся 5 чисел через пробел.
Вывод в файл poker.out. Выводится одна строка - результат анализа.
Примеры
Ввод 1      Ввод 2      Ввод 3      Ввод 4
1 3 9 3 2   1 5 5 4 4   1 5 2 4 3   10 11 12 13 1
Вывод 1     Вывод 2     Вывод 3     Вывод 4
One Pair    Two Pairs   Straight    Nothing
Hosted by uCoz