s = gets.strip $strings = {} def dfs s, acc if s.empty? if !$strings.key?(acc) $strings[acc] = true end return end # 先頭から取る c1 = s[0] acc1 = acc.clone acc1 << c1 dfs(s[1..-1], acc1) # 末尾から取る c2 = s[-1] acc2 = acc.clone acc2 << c2 dfs(s[0..-2], acc2) end dfs(s, "") puts $strings.length