Воперационной системе winux реализована следующим образом: каждую секунду , которая была активна (то есть находилась в начале списка ), ставится в конец списка , а все остальные сдвигаются на одну к началу.
в одной секретной лаборатории компьютер под winux используется для решения вычислительных . вычислениями занимается solve. с утра список состоял из
n
, причём solve существовала в нескольких экземплярах, каким-то образом распределённых по списку. вечером в списке по-прежнему было
n
; более того, все экземпляры solve были ровно на тех же местах в списке, что и с утра, но при этом список в целом различался (то есть на какой-то позиции с утра и вечером стояли разные ). при этом за день ни одна не должна была завершиться и ни одна новая не должна была быть запущена.
вы — разработчик модуля защиты информации в системе winux. ваша — по заданному
n
определить, обязательно ли из полученной информкции следует, что как минимум одна завершилась и как минимум одна была запущена, или же ситуация могла произойти естественным образом.
так как лаборатория секретная, никакой другой информации, кроме числа , у вас нет.
формат ввода
входные данные содержат одно целое число
n
(
2
≤
n
≤
1
0
9
).
формат вывода
выведите “danger”, если непредвиденный запуск гарантированно произошёл, или “safe” в противном случае.
пример 1
ввод вывод
5
danger
пример 2
ввод вывод
6
safe
примечания
решением этой должна являться программа на одном из представленных в системе языков программирования, решающая данную . программа должна считывать данные со стандартного ввода (клавиатуры) и выводить на стандартный вывод (монитор). никаких дополнительных строк или символов выводить не разрешается.
Само объяснение очень большое. Делится им смысла не вижу. В целом все сводится к проверке числа на простоту. Причем надо это сделать с быстрого алгоритма.
Следующее решение приведено на языке Python 3.4.3:
def is_prime( num ):
d = 2
while d * d <= num and num % d != 0:
d += 1
return d * d > num
N = int( input() )
if is_prime( N ):
print( 'Danger' )
else:
print( 'Safe' )