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

Задача 2714

Татьяна Сучкова: Здравствуйте, вопрос по задаче 2714: (Е. Джобс) Текстовый файл 24-j6.txt состоит не более чем из 106 десятичных цифр. Восходящей последовательностью называется последовательность цифр, в которой каждая цифра меньше следующей за ней. Например, в последовательности 7238903278 три таких последовательности – 2389, 03 и 278. Длиной последовательности называется количество входящих в нее цифр. Определите сколько в файле восходящих последовательностей длиной 5, не входящих в восходящие последовательности большей длины. Написана программа [pre2] f=open('24-j6.txt') i=0 k=0 s=f.readline() while i<len(s)-2: l=0 while int(s[ i])<int(s[i+1]) and i<len(s)-2: l+=1 i+=1 if l==5: k+=1 i+=1 print(k) [/pre2] выдает ответ 179, в ответе 2087. От куда такая разница?

Ответов - 2

EugeneJobs: Вы считаете количество подпоследовательностей длиной 6. У вас не учитывается факт, что При первом совпадении условия во вложенном цикле длина последовательности должна быть 2 (так как найдены два первых символа). Отсюда и ответ другой

Татьяна Сучкова: Ох, точно. Мы же пары рассматриваем. Спасибо!!!!



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