Предмет: Информатика, автор: Аноним

В операционной системе Winux многозадачность реализована следующим образом: каждую секунду задача, которая была активна (то есть находилась в начале списка задач), ставится в конец списка задач, а все остальные задачи сдвигаются на одну к началу.
В одной очень секретной лаборатории компьютер под управлением Winux используется для решения вычислительных задач. Вычислениями занимается задача solve. С утра список состоял из
N
задач, причём задача solve существовала в нескольких экземплярах, каким-то образом распределённых по списку. Вечером в списке по-прежнему было
N
задач; более того, все экземпляры задачи solve были ровно на тех же местах в списке, что и с утра, но при этом список задач в целом различался (то есть на какой-то позиции с утра и вечером стояли разные задачи). При этом за день ни одна задача не должна была завершиться и ни одна новая задача не должна была быть запущена.
Вы — разработчик модуля защиты информации в системе Winux. Ваша задача — по заданному
N
определить, обязательно ли из полученной информации следует, что как минимум одна задача завершилась и как минимум одна задача была запущена, или же ситуация могла произойти естественным образом.
Так как лаборатория секретная, никакой другой информации, кроме числа задач, у Вас нет

Ответы

Автор ответа: ao02industry
0

Само объяснение очень большое. Делится им смысла не вижу. В целом все сводится к проверке числа на простоту. Причем надо это сделать с помощью быстрого алгоритма.

Следующее решение приведено на языке 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' )

Похожие вопросы
Предмет: Алгебра, автор: cemma5951
Предмет: Математика, автор: Egorchigggg
Предмет: Химия, автор: Gih54