Форум » Обработка целых чисел » № 5019 » Ответить

№ 5019

Olyx_6: (№ 5019) (П. Волгин) В файле 17-278.txt содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от 0 до 1000. Определите сначала количество пар, в которых оба числа больше, чем сумма всех цифр «7» в восьмеричной записи всех чисел в файле, а затем минимальную из сумм таких пар. Под парой подразумевается два идущих подряд элемента последовательности. Написав такой код, получаю ответ 80 441, при том что сумма всех чисел '7' в восьм. системе равна 140, а правильный ответ 71 и 553, помогите пожалуйста [pre2] f = open('1.txt') a = [] for s in f: a.append(int(s)) summ7 = 0 minsum = 10000 c = 0 for i in range(len(a)): summ7 = oct(i)[2:].count('7') * 7 + summ7 for i in range(len(a)-1): if a[ i] > summ7 and a[i+1] > summ7: c += 1 if a[ i] + a[i+1] < minsum: minsum = a[ i] + a[i+1] print(c, minsum)[/pre2]

Ответов - 1

Поляков: Проверьте, какие числа вы переводите в восьмеричную систему: summ7 = oct(i)[2:].count('7') * 7 + summ7



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