結果

問題 No.188 HAPPY DAY
ユーザー shiCanoko_oshiCanoko_o
提出日時 2019-05-15 18:33:19
言語 Perl
(5.38.2)
結果
AC  
実行時間 4 ms / 1,000 ms
コード長 19,126 bytes
コンパイル時間 273 ms
コンパイル使用メモリ 5,152 KB
実行使用メモリ 4,688 KB
最終ジャッジ日時 2023-10-12 07:46:13
合計ジャッジ時間 768 ms
ジャッジサーバーID
(参考情報)
judge12 / judge14
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 4 ms
4,688 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
Main.pl syntax OK

ソースコード

diff #

my @month = (1..12);
my @days_1 = (1..31);#1月、3月、5月、7月、8月、10月、12月
my @days_2 = (1..30);#4月、6月、9月、11月
my @days_3 = (1..28);#2月

my $day_10_r; #10の位

#1月
my $count1 = 0;
my $count2 = 0;
my $count3 = 0;

#2月
my $count4 = 0;
my $count5 = 0;
my $count6 = 0;

#3月
my $count7 = 0;
my $count8 = 0;
my $count9 = 0;

#4月
my $count10 = 0;
my $count11 = 0;
my $count12 = 0;

#5月
my $count13 = 0;
my $count14 = 0;
my $count15 = 0;

#6月
my $count16 = 0;
my $count17 = 0;
my $count18 = 0;

#7月
my $count19 = 0;
my $count20 = 0;
my $count21 = 0;

#8月
my $count22 = 0;
my $count23 = 0;
my $count24 = 0;

#9月
my $count25 = 0;
my $count26 = 0;
my $count27 = 0;

#10月
my $count28 = 0;
my $count29 = 0;
my $count30 = 0;

#11月
my $count31 = 0;
my $count32 = 0;
my $count33 = 0;

#12月
my $count34 = 0;
my $count35 = 0;
my $count36 = 0;

#ーーーーーーーーーーーーーーーーーーーー1月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_1){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[0]){
                $count1++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[0]){
                $count2++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[0]){
            $count3++;
        }

    }
} 

#ーーーーーーーーーーーーーーーーーーーー2月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_3){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[1]){
                $count4++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[1]){
                $count5++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[1]){
            $count6++;
        }

    }
} 

#ーーーーーーーーーーーーーーーーーーーー3月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_1){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[2]){
                $count7++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[2]){
                $count8++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[2]){
            $count9++;
        }

    }
} 

#ーーーーーーーーーーーーーーーーーーーー4月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_2){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[3]){
                $count10++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[3]){
                $count11++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[3]){
            $count12++;
        }

    }
} 

#ーーーーーーーーーーーーーーーーーーーー5月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_1){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[4]){
                $count13++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[4]){
                $count14++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[4]){
            $count15++;
        }

    }
} 

#ーーーーーーーーーーーーーーーーーーーー6月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_2){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[5]){
                $count16++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[5]){
                $count17++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[5]){
            $count18++;
        }

    }
} 

#ーーーーーーーーーーーーーーーーーーーー7月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_1){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[6]){
                $count19++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[6]){
                $count20++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[6]){
            $count21++;
        }

    }
} 

#ーーーーーーーーーーーーーーーーーーーー8月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_1){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[7]){
                $count22++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[7]){
                $count23++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[7]){
            $count24++;
        }

    }
} 

my $total_count8 = $count1 + $count2 + $count3;

#ーーーーーーーーーーーーーーーーーーーー9月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_2){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[8]){
                $count25++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[8]){
                $count26++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[8]){
            $count27++;
        }

    }
} 

my $total_count9 = $count1 + $count2 + $count3;

#ーーーーーーーーーーーーーーーーーーーー10月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_1){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[9]){
                $count28++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[9]){
                $count29++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[9]){
            $count30++;
        }

    }
} 

my $total_count10 = $count1 + $count2 + $count3;

#ーーーーーーーーーーーーーーーーーーーー11月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_2){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[10]){
                $count31++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[10]){
                $count32++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[10]){
            $count33++;
        }

    }
} 

my $total_count11 = $count1 + $count2 + $count3;

#ーーーーーーーーーーーーーーーーーーーー12月ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
for my $day(@days_1){
    if($day>9){
    #ーーーーーーーーー10の位を求めるーーーーーーーーーーーーーーーーーーーーーーーーー
        my $day_10 = $day/10;
        #ーーーーーーーーー10で割ると少数かつ切り上げられるものとそうでないものーーーー
        if($day_10<int($day_10)){
            $day_10_r = $day_10 - 1;
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[11]){
                $count34++;
            }
        }else{
            $day_10_r = int($day_10);
            #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーー
            if($day_10_r + $day - $day_10_r * 10 == $month[11]){
                $count35++;
            }
        }
    #ーーーーーーーーー10の位がないーーーーーーーーーーーーーーーーーーーーーーーーーー
    }else{
        $day_10_r = 0;
        #ーーーーーーーーー一致回数を求めるーーーーーーーーーーーーーーーーーーーーーー
        if($day_10_r + $day - $day_10_r * 10 == $month[11]){
            $count36++;
        }

    }
} 

my $total_count = $count1 + $count2 + $count3 + $count4 + $count5 + $count6 + $count7 + $count8 + $count9 + $count10 + $count11 + $count12 + $count13 + $count14 + $count15 + $count16 + $count17 + $count18 + $count19 + $count20 + $count21 + $count22 + $count23 + $count24 + $count25 + $count26 + $count27 + $count28 + $count29 + $count30 + $count31 + $count32 + $count33 + $count34 + $count35 + $count36 ;
print "$total_count\n";
0