ゴミ箱に入っていたのをサルベージしました。
ピが2個続いている場所をよく聞けばピカピピカピカ=11にも対応できるのがコツ(?)
もしもピカチュウが「カピ」と鳴くことがあれば、もうこれは成立しない。
(0..100).each{|i| p i;p i.to_s(2).rjust( (i.to_s(2).size % 2) + i.to_s(2).size ,"0");puts i.to_s(2).rjust( (i.to_s(2).size % 2) + i.to_s(2).size ,"0").scan(/.{1,#{2}}/).map{|a| a.gsub(/.*/,{"00" =>"ピィカァ" ,"01" => "ピカチュウ" ,"10" => "ピカピ","11" => "ピカピカ"})}.join("") }
irb(main):001:0> (0..100).each{|i| p i;p i.to_s(2).rjust( (i.to_s(2).size % 2) + i.to_s(2).size ,"0");puts i.to_s(2).rjust( (i.to_s(2).size % 2) + i.to_s(2).size ,"0").scan(/.{1,#{2}}/).map{|a| a.gsub(/.*/,{"00" =>"ピィカァ" ,"01" => "ピカ チュウ" ,"10" => "ピカピ","11" => "ピカピカ"})}.join("") }
0
"00"
ピィカァ
1
"01"
ピカチュウ
2
"10"
ピカピ
3
"11"
ピカピカ
4
"0100"
ピカチュウピィカァ
5
"0101"
ピカチュウピカチュウ
6
"0110"
ピカチュウピカピ
7
"0111"
ピカチュウピカピカ
8
"1000"
ピカピピィカァ
9
"1001"
ピカピピカチュウ
10
"1010"
ピカピピカピ
11
"1011"
ピカピピカピカ
12
"1100"
ピカピカピィカァ
13
"1101"
ピカピカピカチュウ
14
"1110"
ピカピカピカピ
15
"1111"
ピカピカピカピカ
16
"010000"
ピカチュウピィカァピィカァ
17
"010001"
ピカチュウピィカァピカチュウ
18
"010010"
ピカチュウピィカァピカピ
19
"010011"
ピカチュウピィカァピカピカ
20
"010100"
ピカチュウピカチュウピィカァ
21
"010101"
ピカチュウピカチュウピカチュウ
22
"010110"
ピカチュウピカチュウピカピ
23
"010111"
ピカチュウピカチュウピカピカ
24
"011000"
ピカチュウピカピピィカァ
25
"011001"
ピカチュウピカピピカチュウ
26
"011010"
ピカチュウピカピピカピ
27
"011011"
ピカチュウピカピピカピカ
28
"011100"
ピカチュウピカピカピィカァ
29
"011101"
ピカチュウピカピカピカチュウ
30
"011110"
ピカチュウピカピカピカピ
31
"011111"
ピカチュウピカピカピカピカ
32
"100000"
ピカピピィカァピィカァ
33
"100001"
ピカピピィカァピカチュウ
34
"100010"
ピカピピィカァピカピ
35
"100011"
ピカピピィカァピカピカ
36
"100100"
ピカピピカチュウピィカァ
37
"100101"
ピカピピカチュウピカチュウ
38
"100110"
ピカピピカチュウピカピ
39
"100111"
ピカピピカチュウピカピカ
40
"101000"
ピカピピカピピィカァ
41
"101001"
ピカピピカピピカチュウ
42
"101010"
ピカピピカピピカピ
43
"101011"
ピカピピカピピカピカ
44
"101100"
ピカピピカピカピィカァ
45
"101101"
ピカピピカピカピカチュウ
46
"101110"
ピカピピカピカピカピ
47
"101111"
ピカピピカピカピカピカ
48
"110000"
ピカピカピィカァピィカァ
49
"110001"
ピカピカピィカァピカチュウ
50
"110010"
ピカピカピィカァピカピ
51
"110011"
ピカピカピィカァピカピカ
52
"110100"
ピカピカピカチュウピィカァ
53
"110101"
ピカピカピカチュウピカチュウ
54
"110110"
ピカピカピカチュウピカピ
55
"110111"
ピカピカピカチュウピカピカ
56
"111000"
ピカピカピカピピィカァ
57
"111001"
ピカピカピカピピカチュウ
58
"111010"
ピカピカピカピピカピ
59
"111011"
ピカピカピカピピカピカ
60
"111100"
ピカピカピカピカピィカァ
61
"111101"
ピカピカピカピカピカチュウ
62
"111110"
ピカピカピカピカピカピ
63
"111111"
ピカピカピカピカピカピカ
64
"01000000"
ピカチュウピィカァピィカァピィカァ
65
"01000001"
ピカチュウピィカァピィカァピカチュウ
66
"01000010"
ピカチュウピィカァピィカァピカピ
67
"01000011"
ピカチュウピィカァピィカァピカピカ
68
"01000100"
ピカチュウピィカァピカチュウピィカァ
69
"01000101"
ピカチュウピィカァピカチュウピカチュウ
70
"01000110"
ピカチュウピィカァピカチュウピカピ
71
"01000111"
ピカチュウピィカァピカチュウピカピカ
72
"01001000"
ピカチュウピィカァピカピピィカァ
73
"01001001"
ピカチュウピィカァピカピピカチュウ
74
"01001010"
ピカチュウピィカァピカピピカピ
75
"01001011"
ピカチュウピィカァピカピピカピカ
76
"01001100"
ピカチュウピィカァピカピカピィカァ
77
"01001101"
ピカチュウピィカァピカピカピカチュウ
78
"01001110"
ピカチュウピィカァピカピカピカピ
79
"01001111"
ピカチュウピィカァピカピカピカピカ
80
"01010000"
ピカチュウピカチュウピィカァピィカァ
81
"01010001"
ピカチュウピカチュウピィカァピカチュウ
82
"01010010"
ピカチュウピカチュウピィカァピカピ
83
"01010011"
ピカチュウピカチュウピィカァピカピカ
84
"01010100"
ピカチュウピカチュウピカチュウピィカァ
85
"01010101"
ピカチュウピカチュウピカチュウピカチュウ
86
"01010110"
ピカチュウピカチュウピカチュウピカピ
87
"01010111"
ピカチュウピカチュウピカチュウピカピカ
88
"01011000"
ピカチュウピカチュウピカピピィカァ
89
"01011001"
ピカチュウピカチュウピカピピカチュウ
90
"01011010"
ピカチュウピカチュウピカピピカピ
91
"01011011"
ピカチュウピカチュウピカピピカピカ
92
"01011100"
ピカチュウピカチュウピカピカピィカァ
93
"01011101"
ピカチュウピカチュウピカピカピカチュウ
94
"01011110"
ピカチュウピカチュウピカピカピカピ
95
"01011111"
ピカチュウピカチュウピカピカピカピカ
96
"01100000"
ピカチュウピカピピィカァピィカァ
97
"01100001"
ピカチュウピカピピィカァピカチュウ
98
"01100010"
ピカチュウピカピピィカァピカピ
99
"01100011"
ピカチュウピカピピィカァピカピカ
100
"01100100"
ピカチュウピカピピカチュウピィカァ
=> 0..100
ピカピカピカチュウは13