Автор | Сообщение |
|
Отправлено: 03.05.22 06:33. Заголовок: тема 24 задание 136
136) (Е. Джобс) Текстовый файл 24-J5.txt состоит не более чем из 106 символов S, T, O, C, K. Сколько раз встречается комбинация «OCK», не являющаяся при этом частью комбинации «STOCK». Подскажите пожалуйста, почему на столько отличается ответ в решении и в чем у меня логическая ошибка, в решении представленном на сайте К.Ю. Полякова (в решениях) считается просто print(s.count('OCK') - s.count('STOCK')), а я проверяю по буквам и у меня далеко не сходится ответ # Автор: В.Н. Шубинкин with open('24-j5.txt') as tf: s = tf.readline() print(s.count('OCK') - s.count('STOCK')) k=0 for i in range(0,len(s)-4): if ((s[ i-2]!="S" and s[ i-1]!="T") and s[ i]=="O" and s[ i+1]=="C" and s[ i+2]=="K") : k=k+1 print(k)
|
|
|
Ответов - 1
[только новые]
|
|
|
| Администратор
|
Сообщение: 3520
|
|
Отправлено: 06.05.22 15:22. Заголовок: Вот правильный вариа..
Вот правильный вариант: k=0 for i in range(2,len(s)-2): if ((s[ i-2] != "S" or s[ i-1]!="T") and s[ i]=="O" and s[ i+1]=="C" and s[ i+2]=="K") : k=k+1 print(k)
|
|
|