Автор | Сообщение |
|
Отправлено: 30.03.23 09:52. Заголовок: Не сходится ответ к задаче 4270 генератора
Условие задачи: (№ 4270) (В. Шубинкин) В файле 17-1.txt содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от -10 000 до 10 000 включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых хотя бы одно число оканчивается на 6 и делится на 3. Затем - минимальное число в паре среди всех таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности. Например, для последовательности 306; 36; -15; -6; 2; 16 ответом будет пара чисел: 4 и -15. Ответ 587 -9996 Решение: f=open('линия-17-4270.txt') a=[ int(x) for x in f] f.close() k=0 m=10001 for i in range(len(a)-1): if a[ i]%10==6 and a[ i]%3==0 or a[ i+1]%10==6 and a[ i+1]%3==0: k+=1 m=min(m,min(a[ i],a[ i+1])) print(k,m) ответ: 606 -9984
|
|
|
Ответов - 2
[только новые]
|
|
|
Отправлено: 06.04.23 18:04. Заголовок: Остаток от деления о..
Остаток от деления отрицательных чисел в python находится другим образом. Например попробуйте запустить код: print(-34 % 10) print(34 % 10) Ответы будут разные, хотя по факту он должен быть одинаковый и верный разумеется тот, который для положительного числа. Поэтому когда в задаче отрицательные числа, при нахождении остатков используйте модуль, удачи! f=open('test.txt') a=[ int(x) for x in f] f.close() k=0 m=10001 for i in range(len(a)-1): if abs(a[ i])%10==6 and abs(a[ i])%3==0 or abs(a[ i+1])%10==6 and abs(a [i+1])%3==0: k+=1 m=min(m,min(a[ i],a [ i+1])) print(k,m)
|
|
|
|
Отправлено: 08.04.23 12:39. Заголовок: Действительно, забыл..
Действительно, забыла про отрицательные. Спасибо!
|
|
|
|