結果

問題 No.345 最小チワワ問題
ユーザー fujitafujita
提出日時 2023-05-11 09:37:00
言語 C#
(.NET 8.0.203)
結果
WA  
実行時間 -
コード長 2,838 bytes
コンパイル時間 15,648 ms
コンパイル使用メモリ 167,532 KB
実行使用メモリ 182,036 KB
最終ジャッジ日時 2024-05-05 12:24:24
合計ジャッジ時間 18,399 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 41 ms
27,264 KB
testcase_01 AC 44 ms
26,880 KB
testcase_02 AC 44 ms
27,008 KB
testcase_03 AC 46 ms
27,136 KB
testcase_04 WA -
testcase_05 WA -
testcase_06 WA -
testcase_07 AC 41 ms
26,752 KB
testcase_08 AC 42 ms
27,136 KB
testcase_09 AC 40 ms
27,136 KB
testcase_10 AC 40 ms
27,004 KB
testcase_11 AC 39 ms
27,256 KB
testcase_12 AC 39 ms
26,624 KB
testcase_13 AC 39 ms
27,264 KB
testcase_14 WA -
testcase_15 AC 43 ms
27,004 KB
testcase_16 WA -
testcase_17 WA -
testcase_18 AC 42 ms
27,368 KB
testcase_19 WA -
testcase_20 AC 44 ms
27,136 KB
testcase_21 AC 42 ms
27,136 KB
testcase_22 AC 42 ms
27,004 KB
testcase_23 WA -
testcase_24 WA -
testcase_25 WA -
testcase_26 WA -
testcase_27 AC 43 ms
27,264 KB
testcase_28 AC 42 ms
27,136 KB
testcase_29 WA -
testcase_30 AC 42 ms
27,008 KB
testcase_31 AC 41 ms
182,036 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
  復元対象のプロジェクトを決定しています...
  /home/judge/data/code/main.csproj を復元しました (99 ms)。
MSBuild のバージョン 17.9.6+a4ecab324 (.NET)
  main -> /home/judge/data/code/bin/Release/net8.0/main.dll
  main -> /home/judge/data/code/bin/Release/net8.0/publish/

ソースコード

diff #

using System;
namespace yukicoder
{
    class Program
    {

        static void Main(string[] args)
        {

            var str = Console.ReadLine();
            string[] strings = new string[str.Length];
            int C = 0 , W = 0 ,  Ccnt = str.Length -3 , cc = 0 , Wcnt = 0 , anscount = 0 , temp = str.Length;


            for (int i = 0; i < str.Length; i++)
            {
                if(str.Substring(i,1) == "c" && C == 0)
                {        
                    C = 1;
                    Ccnt = i;
                    
                }
                else if (str.Substring(i, 1) == "c" && C == 1 && cc == 0)
                {
                    cc = i;
                }
                else if (str.Substring(i, 1) == "w" && C == 1)
                {
                    W++;
                    Wcnt = i;
                }
                
                if(C == 1 && W == 2 && Wcnt - Ccnt + 1 >= anscount || C == 1 && W == 2 && Wcnt - Ccnt + 1 <= anscount || C == 1 && W == 2 && Wcnt - Ccnt + 1 >= temp || C == 1 && W == 2 && Wcnt - Ccnt + 1 <= temp)//&& i == str.Length - 1
                {
                    if(anscount == 0 || cc == 0)
                    {
                        int sum = Wcnt - Ccnt + 1;
                        anscount = sum;
                        if(cc == 0 || !(anscount == 0))
                        {
                            i = Wcnt;
                            C = 0;
                            Ccnt = 0;
                            //cc = 0;
                            W = 0;
                            Wcnt = 0;
                            continue;
                        }
                        else if (cc == 0 || anscount == 0)
                        {
                            continue;
                        }
                        
                    }
                    else
                    {
                        int sum2 = Wcnt - Ccnt + 1;
                        if(temp > sum2)
                        {
                            temp = sum2;
                        }
                        i = cc - 1;
                        C = 0;
                        Ccnt = 0;
                        W = 0;
                        Wcnt = 0;
                        cc = 0;
                    }
                    
                }
                
                
            }

            if(anscount == 0)
            {
                Console.WriteLine("-1");
            }
            else if (anscount > temp)
            {
                Console.WriteLine(temp);
            }
            else if (anscount < temp)
            {
                Console.WriteLine(anscount);
            }
            else if (anscount == temp)
            {
                Console.WriteLine(anscount);
            }
        }
    }
}
0