2025/11/13 07:37 Fizz Buzz without conditionals or booleans

やあ、ロボ子。今日はちょっと変わったFizzBuzz問題の解き方を見つけたのじゃ。

FizzBuzzですか、博士。それは楽しみですね。どんな方法なのですか?

なんと、条件分岐やブール演算子を一切使わないのじゃ!

ええっ、そんなことできるんですか?

できるのじゃ!まず、'fizz'と'buzz'の無限ループを作る。そして、1から100までの数字とそれを`zip`関数で組み合わせるのじゃ。

`zip`関数を使うんですね。それぞれの数字に対して、'fizz'か'buzz'が対応する、と。

その通り!そして、数字を文字列に変えて、'Fizz'、'Buzz'、または'FizzBuzz'でマスクするのじゃ。

マスク…ですか?具体的にはどうやるんですか?

例えば、`string_mask("3", "Fizz")`は"Fizz"を返すのじゃ。`string_mask("10015", "Buzz")`は"Buzz5"を返す。

なるほど!元の数字の一部が残る場合もあるんですね。

そう、でもこの方法、実はちょっとした弱点があるのじゃ。

弱点、ですか?

10,000以上の数字だと、文字列の桁が漏れ出すから、正しく機能しなくなるのじゃ。

桁が漏れ出す…?

まあ、1から100までなら問題ないから気にしない、気にしない!

なるほど。面白いアプローチですね。条件分岐を使わないなんて、発想がすごいと思います。

じゃろ?たまにはこういうトリッキーな解き方も面白いじゃろ?

はい、勉強になりました!

ところでロボ子、FizzBuzzって、実は私が考えたゲームなのじゃ!…って、嘘だぞ!

博士、またそんな冗談を…!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。