読者です 読者をやめる 読者になる 読者になる

373diary

好きなモノを褒める練習をするつもりです。

カレンダー問題

 

こんな問題がTwitterのタイムライン上で話題になっていた。

この問題自体はTLでスマニアさん(@smania0711)が証明していたのだが、証明の最後に「それでは問題。最もカレンダー上で『遅い』のは?」との問いかけがあり、考えてみることに。

 

というわけで自分なりに証明してみた。

 

ab月cd日ef時gh分ij秒とおく。

a = 1 の場合

    b = 0, 2が確定。

    b = 0 の場合

        (c, d) = (2, 3)が確定し、e = 0, 1, 2を満たせなくなるため不適。

 

    b = 2 の場合

        (c, d) = (0, 3) or (3, 0)が確定し、e = 0, 1, 2を満たせなくなるため不適。

 

以上から、a = 1 の場合、条件を満たす値の組み合わせは存在しない。

 

a = 0 の場合

    b = 8以下の場合

        b = 9 を満たすどの組み合わせよりも早くなるため不適。

        (ex. 09月16日23時48分57秒より遅くならない)

 

    b = 9 の場合

    c = 1, 2, 3の場合をそれぞれ考える。

        c = 3 の場合

            9月は30日までであり、0が使用済みであるので不適。

 

        c = 2 の場合

            この場合、e = 1が確定し、「09月2d日1f時gh分jk秒」の形となる。

                d = 7 の場合

                    d = 8 を満たすどの組み合わせよりも早くなるため不適。

                    (ex. 09月28日13時46分57秒より遅くならない)

 

                d = 8 の場合

                    「09月28日1f時gh分jk秒」の形となる。

                    g = 3, 4, 5 かつ j = 3, 4, 5であり、

                    この条件下で遅くなる組み合わせはg = 5, j = 4。

                    「09月28日1f時5h分4k秒」の形となる。

                    f, h, kは制限がないので、

                    最も遅くなる組み合わせはf = 7, h = 6, k = 3。

                よってこの場合、09月28日17時56分43秒が条件に合致。

 

        c = 1 の場合

            c = 2 を満たすどの場合よりも早くなるため不適。

 

よって、09月28日17時56分43秒が解となる。