Он с двоичными кодами работает, а не с числами, но они как раз и могут представлять из себя числа, которые запрограммированы.
def f():
result = []
for i in range(100, 10000):
str_num = str(i)
num = sum([int(x) ** len(str_num) for x in str_num])
if num == i:
result.append(i)
return result
Вроде бы это,но ты проверь,писал на скорую руку.
#include <iostream>
using namespace std;
int main ()
{
double a, day, S;
a = 10;
S = 0;
day = 1;
for (int j = 0; S < 100; j++)
{
if (day == 1)
{
S = a;
day++;
}
else
{
a = a * 1.1;
S += a;
day++;
}
}
cout << (day-1) << endl;
return 0;
}
При правильной игре выйграет тот, кто пойдёт первым и возьмёт все камни из кучки =)