Chat:Ru/2021-08-11
gsomix: привет!
gsomix: давно сюда не заглядывал :)
Uljahn: хай
TTeaLL: подскажите плез, надо подсчитать количество повторяющихся символов в строке скажем check = 'aaabbbccceee' какой символ и сколько повторяется, ответ должен быть типо a 3 b 3 c 3 e 3
TTeaLL: питон, без словарей, чисто как-то циклами, вроде просто но чёт в циклах путаюсь
Uljahn: как без словарей?
TTeaLL: без словарей нельзя думаешь?
Uljahn: а, ну можно брать первый символ и считать, сколько раз он встречается, потом удалять его из строки
TTeaLL: ну просто я знаю решение со словарями, и мне сказали, что ещё есть без словарей, я даже написал, но он чуть некоректно выдаёт результат
TTeaLL: а, так, вот это интересно
Uljahn: я бы вообще Counter использовал, но это словарь по сути
Uljahn: или groupby, если одинаковые символы всегда подряд
TTeaLL: это я так не самый сложный пример
TTeaLL: я на скорую руку так написал
TTeaLL: http://chat.codingame.com/pastebin/ee4bf4b7-4ed1-4770-acf7-c5c243d1928f
TTeaLL: но он кучу раз печатает повторяющиеся значения, хотя и правильно, но вот чёт не приходит в голову, как сделать так, чтобы перчатал по одному разу каждую букву, ну типо не а 3 а 3 а 3 b 3b b3 b3 и тп, а просто a3 b3 e3 ну ты понял
Uljahn: берёшь первую букву, запоминаешь и печатаешь её, считаешь количество вхождений, печатаешь, удаляешь эту букву из строки, берёшь снова первую и т.д.
Uljahn: пока строка не пустая
Uljahn: while line: char = line[0]; print(char, line.count(char), end=" "); line = line.replace(char, "")
Uljahn: типа такого в голове крутится
AndyWasHere: заноси уже посчитанные символы в отдельную строку и проверяй, либо удаляй их из строки