世界は5 x 5のセルの配列です。四方を包みます。次のように視覚化できます...
XXXXX XXXXX XXOXX XXXXX XXXXX
あなたはOです。あなたは世界を旅行するのが大好きで、次のルールに従って旅行をします(Cを当日とします)。
- でプライムの日、あなたは懐かしい感じ。昨日始めたところに戻ります。
- で奇数日、あなたはホームシックを感じます。可能であれば、水平方向に1ステップ移動し、可能であれば、垂直方向に1ステップ移動します。近さを判断する目的で、ワールドラッピングを無視します。
- 日、あなたは冒険を感じます。C / 2ステップ南に移動します。
- 上の四角の日、あなたは冒険を感じます。東の壁に移動します。
- 上のフィボナッチ日、世界は1行で南下拡大します。
- 上三角日、世界は一つの列で東へ拡大します。
上記のルールのうち2つ以上が同時に適用される場合は、リストされている順に適用します。たとえば、奇数のプライムデイでは、昨日始めた場所に最初に戻り、次に家に一歩近づきます。
あなたは、(最初の)世界の中心、すなわち北西の角からゼロインデックスの位置(2,2)に住んでいます。そこから旅を始めます。
入力
単一の整数、N。
出力
XとYは、北西隅からゼロのインデックスが付けられ、1つのスペースで区切られたN日目に調整されます。
説明付きテストケース
の入力が与えられた3
場合、正しい出力は次のとおりです。
2 3
私たちは一度に1日これをやり遂げることができます。1日目から、次の動きを適用する必要があります。
- 奇数、正方形、フィボナッチ、および三角形
- プライム、イーブン、フィボナッチ
- プライム、奇数、フィボナッチ、および三角形
視覚的な形式:
1日目2日目3日目 XXXXX XXXXXX XXXXXX XXXXXXX XXXXX XXXXXX XXXXXX XXXXXXX XXOXX-> XXXXOX-> XXXXXX-> XXXOXXX XXXXX XXXXXX XXOXXX XXXXXXX XXXXX XXXXXX XXXXXX XXXXXXX XXXXXX XXXXXX XXXXXXX XXXXXX XXXXXXX XXXXXXX
追加のテストケース
礼儀マーティンBüttnerの参照溶液(あなたは出力は、単一のそれらのすべてではなく、座標べきであるとしてください。注):
Input: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Output: 4 2 2 3 3 2 6 4 2 2 2 5 2 2 2 6 7 5 7 0 6 4 6 0 5 3 5 10 4 9 9 6 3 8 3 6 2 7 2 6 2 5 2 4 2 4
これはコードゴルフです。最短の提出が勝ちです。