結果
問題 | No.361 門松ゲーム2 |
ユーザー |
![]() |
提出日時 | 2017-07-26 03:21:02 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,425 bytes |
コンパイル時間 | 965 ms |
コンパイル使用メモリ | 112,980 KB |
実行使用メモリ | 29,392 KB |
最終ジャッジ日時 | 2024-10-09 17:30:38 |
合計ジャッジ時間 | 3,136 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 16 WA * 12 |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System;using System.Collections;using System.Collections.Generic;using System.Collections.Specialized;using System.Text;using System.Text.RegularExpressions;using System.Linq;using System.IO;class Program{static void Main(){new Magatro().Solve();}}class Magatro{private int L, D;private int[] Grundy = (new int[501]).Select(i => -1).ToArray();private void Scan(){var line = Console.ReadLine().Split(' ');L = int.Parse(line[0]);D = int.Parse(line[1]);}private int G(int n){if (Grundy[n] != -1){return Grundy[n];}bool[] b = new bool[501];for (int i = 1; i <= n; i++){for (int j = i + 1; j <= n; j++){int k = n - i - j;if (i >= j || j >= k){continue;}if (k - i > D){continue;}int next = G(i) ^ G(j) ^ G(k);b[next] = true;}}int result = 0;while (b[result]){result++;}Grundy[n] = result;return result;}public void Solve(){Scan();Grundy[1] = 0;Console.WriteLine(G(L) == 0 ? "matsu" : "kudo");}}