Форум » Выполнение и анализ алгоритмов для исполнителей » (№ 5722) (А. Игнатюк) реплика по условию задачи » Ответить

(№ 5722) (А. Игнатюк) реплика по условию задачи

Skov: Исполнитель «Аппо» получает на вход четырехзначное число N и строит новое число R по следующим правилам: 1) Если первая цифра числа N делится на 4, то в числе R заменяем её на цифру 9. А как можно заменить цифру в несуществующем числе? Ведь числа R нет, его строительство только начинается.

Ответов - 4

Поляков: Убрал "в числе R". Хотя, конечно же, все было понятно. :-)

s11kai: (№ 5722) (А. Игнатюк) Исполнитель «Аппо» получает на вход четырехзначное число N и строит новое число R по следующим правилам: 1) Если первая цифра числа N делится на 4, то заменяем её на цифру 9. 2) Если первая цифра числа N делится на 2 и не делится на 4, то заменяем её на цифру 3. Сколько существует чисел N, для которых соответствующее число R начинается с цифры 9, а восьмеричная запись числа R оканчивается цифрой 4? пункт 2) помню - алгоритм должен выполняться полностью и беспрекословно! В связи с чем возникает вопрос, будет ли решение считаться правильным если в нем упустить этот пункт. Например так: [pre2] k=0 for x in range(9000,10000): if x%8==4: k+=1 print(k*3)[/pre2] или оно должно обязательно включать все пункты условия, например так: [pre2] def f(R): su = 0 for i in range(R,10000): if i%8==4: su+=1 return su k = 0 for i in range(1,10): if i%4 == 0 or i%9 == 0: R = 9000 k = k + f(R) if i%2 == 0 and i%4 != 0: R = 3000 print(k) [/pre2] Спасибо!

Инкогнито: a=[] r='' for n in range(1000,10000): r=str(n) if (n//1000)%4==0: r=str(n) r='9'+r[1:] k=oct(int(r))[2:] k=k[-1:] if (int(r)//1000)==9 and k=='4': a.append(n) if (n//1000)%2==0 and (n//1000)%4!=0: r='3'+r[1:] print(len(a))


s11kai: Инкогнито пишет: a=[] r='' for n in range(1000,10000): r=str(n) if (n//1000)%4==0: r=str(n) r='9'+r[1:] k=oct(int(r))[2:] k=k[-1:] if (int(r)//1000)==9 and k=='4': a.append(n) if (n//1000)%2==0 and (n//1000)%4!=0: r='3'+r[1:] print(len(a)) И как работает данная куча различных буковок, неужели трудно отформатировать код как положено, тем более, что вверху подробненько поясняется как его нужно "заворачивать" что-бы он был удобочитаем и понятен



полная версия страницы