結果

問題 No.267 トランプソート
コンテスト
ユーザー aaa aa
提出日時 2025-12-17 11:42:40
言語 C#
(.NET 10.0.101)
結果
WA  
実行時間 -
コード長 6,162 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 7,789 ms
コンパイル使用メモリ 169,944 KB
実行使用メモリ 188,792 KB
最終ジャッジ日時 2025-12-17 11:42:53
合計ジャッジ時間 10,606 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2 WA * 1
other AC * 3 WA * 17
権限があれば一括ダウンロードができます
コンパイルメッセージ
  復元対象のプロジェクトを決定しています...
  /home/judge/data/code/main.csproj を復元しました (112 ミリ秒)。
  main -> /home/judge/data/code/bin/Release/net8.0/main.dll
  main -> /home/judge/data/code/bin/Release/net8.0/publish/

ソースコード

diff #
raw source code

using System.Numerics;

public class Program
{
    public static void Main()
    {

        //BigInteger num = BigInteger.Parse(Console.ReadLine() ?? string.Empty);
        int num = int.Parse(Console.ReadLine() ?? string.Empty);
        string[] moji = (Console.ReadLine() ?? string.Empty).Trim().Split(' ');
        //string str = Console.ReadLine() ?? string.Empty;

        List<int> d = new List<int>();
        List<int> c = new List<int>();
        List<int> s = new List<int>();
        List<int> h = new List<int>();
        for (int i = 0; i < num; i++)
        {
            //マークごとに分ける
            if (moji[i][0] == 'D')
            {
                moji[i] = moji[i].Replace("D", "");
                if (moji[i] == "A")
                {
                    moji[i] = "1";
                }
                else if (moji[i] == "T")
                {
                    moji[i] = "10";
                }
                else if (moji[i] == "J")
                {
                    moji[i] = "11";
                }
                else if (moji[i] == "Q")
                {
                    moji[i] = "12";
                }
                else if (moji[i] == "K")
                {
                    moji[i] = "13";
                }
                d.Add(int.Parse(moji[i]));
            }
            else if (moji[i][0] == 'C')
            {
                moji[i] = moji[i].Replace("C", "");
                if (moji[i] == "A")
                {
                    moji[i] = "1";
                }
                else if (moji[i] == "T")
                {
                    moji[i] = "10";
                }
                else if (moji[i] == "J")
                {
                    moji[i] = "11";
                }
                else if (moji[i] == "Q")
                {
                    moji[i] = "12";
                }
                else if (moji[i] == "K")
                {
                    moji[i] = "13";
                }

                c.Add(int.Parse(moji[i]));
            }
            else if (moji[i][0] == 'S')
            {
                moji[i] = moji[i].Replace("S", "");
                if (moji[i] == "A")
                {
                    moji[i] = "1";
                }
                else if (moji[i] == "T")
                {
                    moji[i] = "10";
                }
                else if (moji[i] == "J")
                {
                    moji[i] = "11";
                }
                else if (moji[i] == "Q")
                {
                    moji[i] = "12";
                }
                else if (moji[i] == "K")
                {
                    moji[i] = "13";
                }

                s.Add(int.Parse(moji[i]));
            }
            else
            {
                moji[i] = moji[i].Replace("H", "");
                if (moji[i] == "A")
                {
                    moji[i] = "1";
                }
                else if (moji[i] == "T")
                {
                    moji[i] = "10";
                }
                else if (moji[i] == "J")
                {
                    moji[i] = "11";
                }
                else if (moji[i] == "Q")
                {
                    moji[i] = "12";
                }
                else if (moji[i] == "K")
                {
                    moji[i] = "13";
                }

                h.Add(int.Parse(moji[i]));
            }
        }
        //A<T<J<Q<K
        d.Sort();
        c.Sort();
        s.Sort();
        h.Sort();

        for (int i = 0; i < d.Count; i++)
        {
            if (d[i] == 1)
            {
                Console.Write("DA ");
            }
            else if (d[i] == 10)
            {
                Console.Write("DT ");
            }
            else if (d[i] == 11)
            {
                Console.Write("DJ ");
            }
            else if (d[i] == 12)
            {
                Console.Write("DQ ");
            }
            else if (d[i] == 13)
            {
                Console.Write("DK ");
            }
            else
            {
                Console.Write("D{0} ", d[i]);
            }
        }
        for (int i = 0; i < c.Count; i++)
        {
            if (c[i] == 1)
            {
                Console.Write("CA ");
            }
            else if (c[i] == 10)
            {
                Console.Write("CT ");
            }
            else if (c[i] == 11)
            {
                Console.Write("CJ ");
            }
            else if (c[i] == 12)
            {
                Console.Write("CQ ");
            }
            else if (c[i] == 13)
            {
                Console.Write("CK ");
            }
            else
            {

                Console.Write("C{0} ", c[i]);
            }
        }
        for (int i = 0; i < s.Count; i++)
        {
            if (s[i] == 1)
            {
                Console.Write("SA ");
            }
            else if (s[i] == 10)
            {
                Console.Write("ST ");
            }
            else if (s[i] == 11)
            {
                Console.Write("SJ ");
            }
            else if (s[i] == 12)
            {
                Console.Write("SQ ");
            }
            else if (s[i] == 13)
            {
                Console.Write("SK ");
            }
            else
            {

                Console.Write("S{0} ", s[i]);
            }
        }
        for (int i = 0; i < h.Count; i++)
        {
            if (h[i] == 1)
            {
                Console.Write("HA ");
            }
            else if (h[i] == 10)
            {
                Console.Write("HT ");
            }
            else if (h[i] == 11)
            {
                Console.Write("HJ ");
            }
            else if (h[i] == 12)
            {
                Console.Write("HQ ");
            }
            else if (h[i] == 13)
            {
                Console.Write("HK ");
            }
            else
            {

                Console.Write("H{0} ", h[i]);
            }
        }

    }
}
0