Форум » Обработка целых чисел » Задача 6069 ответ не верен? » Ответить

Задача 6069 ответ не верен?

Татьяна Сучкова: Программа следующая: [pre2] f = open("17-354.txt", "r") a = [] b = [] for s in f: x = int(s) a.append(x) if abs(x)%10==2: b.append(x) m=min(b) k = 0 smin = 200000000 for i in range(len(a)-1): sm = a**2 + a[i+1]**2 if abs(a%10-a[i-1]%10)==1: if a%5==0 and a[i+1]%5 !=0 or a%5!=0 and a[i+1]%5 ==0: if sm>m**2: k+=1 if a+a[i+1]>0 and a+a[i+1]<smin: smin = a+a[i+1] print(k,smin) [/pre2] выдает ответ 61 101 а должно быть 67 79?

Ответов - 3

elpov06: [pre2]f = open("17-354.txt", "r") a = [] b = [] for s in f: x = int(s) a.append(x) if abs(x)%10==2: b.append(x) m=min(b) k = 0 smin = 200000000 for i in range(len(a)-1): sm = a**2 + a[i+1]**2 if abs(abs(a)%10-abs(a[i+1])%10)==1: if a%5==0 and a[i+1]%5 !=0 or a%5!=0 and a[i+1]%5 ==0: if sm>m**2: k+=1 if a+a[i+1]>0 and a+a[i+1]<smin: smin = a+a[i+1] print(k,smin) [/pre2] исправлено if abs(abs(a)%10-abs(a[i+1])%10)==1:

Татьяна Сучкова: Ох, вот ведь, не по глазам было Спасибо!!!!

Ж: g=lambda a,b: abs(abs(a)%10-abs(b)%10)==1 and ((a%5==0)+(b%5==0))==1 and (a**2)+(b**2)>mi s=[int(c) for c in open('c:/17-354.txt')] mi=(min( c for c in s if str(c)[-1]=='2'))**2 pa=[(s+s[i+1]) for i in range(len(s)-1) if g(s,s[i+1]) ] print(len(pa),min(c for c in pa if c>0))




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