Поделитесь своими знаниями, ответьте на вопрос:
Опишите модель решения постоянной задачи соблюдая следующие пункты 1) входные задания программы 2) выходные задания программы 3) цель проектирования программы 4) наличие программы 5) область применение программы это сор по информатике
--
import datetime
import time
from math import sqrt
UTC = datetime.datetime.utcnow
class MyClass:
def __init__(self, number):
self.number = number
self.res = 0
self.acc = [[1]]
def addToPos(self, pos, i):
self.acc[pos] = self.acc[pos] + [i]
def addToTail(self, i):
self.acc = self.acc + [[i]]
def testPos(self, pos, i):
ret = True
for x in self.acc[pos]:
if i % x == 0:
ret = False
break
return ret
def addCand(self, i):
ret = False
pos = 0
for lst in self.acc:
if self.testPos(pos, i):
ret = True
self.addToPos(pos, i)
break
pos = pos + 1
if not ret:
self.addToTail(i)
def calc(self):
for i in range(2, self.number + 1):
self.addCand(i)
print(self.acc)
print(len(self.acc))
def test(num):
start = UTC()
cl = MyClass(num)
cl.calc()
print (UTC() - start)
if __name__ == '__main__':
test(int(input()))
python test.py
9
[[1], [2, 3, 5, 7], [4, 6, 9], [8]]
4