2016/08/12に勉強会を開催した記録
問題
1~100までの番号が書かれた100枚のカードが順番に並べられています。 最初、すべてのカードは裏返しの状態で置かれています。
ある人が2番のカードから、1つおきにカードを裏返していきます。 すると、2, 4, 6, … , 100番のカードが表を向いています。
次に、別の人が、3番のカードから2つおきにカードを裏返していきます。 (裏向きのカードは表を向き、表向いているカードは裏返しされます。) また、別の人が、4番のカードから3つおきに、カードを裏返してきます。
このようにn番目のカードからn-1つおきにカードを裏返す操作を、 どのカードの向きも変わらなくなるまで続けたとします。 裏向きになっているカードの番号をすべて求めてください。
引用: CodeIQ 第13回「今週のアルゴリズム:カードを裏返して!」 URL: https://codeiq.jp/magazine/2014/02/5704/
自分で解いた解答
冗長な箇所は多い.参考までに.