Автор | Сообщение |
|
Отправлено: 16.03.22 17:24. Заголовок: И опять 4721
Здравствуйте, все равно проблемы с ответом. Сумма сходится, а количество нет def Sum(x): S = 0 while x > 0: S += x%10 x //= 10 return S f = open('17-243.txt') a = [] for s in f: a.append(int(s)) f.close() k = 0 smin = 100000 S61 = 0 for i in range(len(a)-1): if a[ i] % 61 == 0: S61 += Sum(a) for i in range(len(a)-1): if (a[ i] > S61 and a[i+1] % 100 == 33) \ or (a[ i] % 100 == 33 and a[i+1] > S61): k+=1 s1 = a[ i] + a[i+1] if s1<smin: smin = s1 print(k,smin)
|
|
|
Ответов - 2
[только новые]
|
|
|
| Администратор
|
Сообщение: 3384
|
|
Отправлено: 17.03.22 10:01. Заголовок: Татьяна Сучкова пише..
Татьяна Сучкова пишет: цитата: | if (a[ i] > S61 and a[i+1] % 100 == 33) |
|
Этим вы проверяете, что первый элемент пары больше S61, а второй оканчивается на 33. А должно быть еще условие, что второй элемент не больше, чем S61 ("ровно один").
|
|
|
|
Отправлено: 18.03.22 16:07. Заголовок: Ох, точно. Спасибо, ..
Ох, точно. Спасибо, все получилось.
|
|
|
|