1
1
mirror of https://github.com/theoludwig/programming-challenges.git synced 2024-10-29 22:17:23 +01:00
programming-challenges/challenges/look-and-say-sequence-conway
2022-09-24 22:17:07 +02:00
..
solutions perf: use optimization options for Rust and gcc 2022-09-24 22:17:07 +02:00
test feat(challenges): add look-and-say-sequence-conway 2021-11-30 16:15:10 +01:00
README.md feat(challenges): add look-and-say-sequence-conway 2021-11-30 16:15:10 +01:00

look-and-say-sequence-conway

Created by @Divlo on 30 November 2021.

Instructions

In mathematics, the look-and-say sequence is the sequence of integers beginning as follows: 1, 11, 21, 1211, 111221, 312211, 13112221, 1113213211, ....

The look-and-say sequence was introduced and analyzed by John Conway.

To generate a member of the sequence from the previous member, read off the digits of the previous member, counting the number of digits in groups of the same digit. For example:

  • 1 is read off as "one 1" or 11.
  • 11 is read off as "two 1s" or 21.
  • 21 is read off as "one 2, then one 1" or 1211.
  • 1211 is read off as "one 1, one 2, then two 1s" or 111221.
  • 111221 is read off as "three 1s, two 2s, then one 1" or 312211.

Write a program that prints the next term of the look-and-say sequence.

Source

Examples

Example 1

Input

11

Output

21

Example 2

Input

1211

Output

111221

See the test folder for examples of input/output.