Делимость
Ограничения: время – 1s/2s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод 
Послать решение Blockly Посылки Темы Где Обсудить (0)
Рассмотрим последовательность целых чисел. Расставляя знаки операции + и - между этими числами мы получим разные результаты. Напишите программу, которая проверяет, можно ли расставить знаки операции + и - таким образом, чтобы результат делился на заданное число K.
Ввод: в первой троке содержатся два целых числа N и K (1 , 2 ≤ K\ ≤ 100), разделенных пробелом. Во второй строке последовательность из N целых чисел, разделенных пробелом. Все целые не превосходят по абсолютному значению 10000.
Вывод: Напечатайте слово "Divisible", если результат можно сделать делящимся на K, и "Not divisible", если нельзя.
Пример ввода
4 7
17 5 -21 15
Пояснение к примеру:
Существует 8 способов расставить знаки + и –
17 + 5 + -21 + 15 = 16
17 + 5 + -21 - 15 = -14
17 + 5 - -21 + 15 = 58
17 + 5 - -21 - 15 = 28
17 - 5 + -21 + 15 = 6
17 - 5 + -21 - 15 = -24
17 - 5 - -21 + 15 = 48
17 - 5 - -21 - 15 = 18
Во втором и четвёртом варианте результат делится на 7 без остатка.
Источник: NEERC ACM ICPC, 1999