ответ: 1499 9949
Python:
def f(n):
digits = [int(i) for i in str(n)]
# 1
first_sum = digits[0] + digits[1]
# 2
second_sum = digits[1] + digits[2]
# 3
third_sum = digits[2] + digits[3]
# 4
amounts = [first_sum, second_sum, third_sum]
del amounts[amounts.index(min(amounts))]
# 5
amounts.sort()
return int(str(amounts[0]) + str(amounts[1]))
numbers = []
for x in range(1000, 10000):
if f(x) == 1318:
numbers.append(x)
print(numbers[0], numbers[-1])
Python:
# 1
print(True if int(input()) ** 0.5 % 1 == 0 else False)
# 2
def is_prime(x):
for d in range(2, x // 2 + 1):
if x % d == 0: return False
return True
for number in range(int(input()), int(input()) + 1):
if is_prime(number): print(number)
# 3
variants = [15, 17, 21]
ways = []
def f(count=0, history=[]):
if count == 185:
ways.append(history)
return 1
if count > 185: return 0
return f(count + variants[0], history + [variants[0]]) \
+ f(count + variants[1], history + [variants[1]]) \
+ f(count + variants[2], history + [variants[2]])
result = f()
print(result)
print(*ways[0], sep=' => ')
# 5
ways = []
def f(n, x=0, history=[]):
if x == n:
history.sort()
if history in ways: return 0
ways.append(history)
return 1
if x > n: return 0
return f(n, x + 10, history+[10]) \
+ f(n, x + 5, history+[5]) \
+ f(n, x + 2, history+[2]) \
+ f(n, x + 1, history+[1])
f(int(input()))
print(len(ways))