Написать класс Spiral, экземпляр которого образуется из строки, содержащей одну или несколько последовательностей одинаковых символов, при этом одинаковые символы группируются в порядке их первого вхождения, например Spiral("1233443213")11 22 3333 44. При преобразовании в строку такая последовательность должна «закручиваться в спираль» против часовой стрелки, начиная с направления «вправо» (см. пример). Помимо преобразования в строку объект типа Spiral должен:

   1 S = Spiral("abbcccddddeeeee")
   2 I = Spiral("abcdefghi")
   3 
   4 print(f"{S}\n")
   5 print(S+I, "\n")
   6 print(S-I, "\n")
   7 print(I*2, "\n")
   8 print(I*2-S, "\n")
   9 print(*list(S+I))

Подсказка: при решении задачи мне пригодился collections.Counter

dccc
d  b
d ab
d
eeeee

   ihg
     f
ccbb e
c  b e
c aa e
d    e
ddddee

eddd
e  c
e bc
e

dccb
d  b
e aa i
e    i
ffgghh

hhgg
i  f
i af

a a b b b c c c c d d d d d e e e e e e f g h i


CategoryHomework

LecturesCMC/PythonIntro2022/Homework_SpiralString (последним исправлял пользователь FrBrGeorge 2022-10-30 18:45:43)