けんちょんの競プロ精進記録

競プロの精進記録や小ネタを書いていきます

日付や時刻に関する問題

AtCoder ABC 200 A - Century (灰色, 100 点)

切り上げ処理の問題! 問題へのリンク 問題概要 西暦 年は何世紀ですか? 解法 のとき、2 世紀 のとき、21 世紀 というように、 を 100 で割ったときの余りを切り上げたものが答えとなる。 これは、(N + 100 - 1) / 100 によって求められる (ここがピンと来…

AtCoder ABC 146 A - Can't Wait for Holiday (灰色, 100 点)

ちょっと面倒。配列を使えば少し楽できるかもしれない。 問題へのリンク 問題概要 曜日を表す文字列 が与えられる。日曜日が何日後かを求めよ。 (詳細はリンク先を参照) 解法 は 7 通りしかないので、それぞれについて答えを出力していく。 if 文や switch …

AtCoder ABC 119 A - Still TBD (灰色, 100 点)

これは戸惑った人も多いと思う。実は単純に考えて OK! 問題へのリンク 問題概要 日付データが yyyy/mm/dd 形式の文字列で与えられる (ex:"2019/04/30")。 与えられた日付が、2019 年 4 月 30 日以前であるかどうかを判定せよ。 解法 文字列を string 型で…

AtCoder ABC 331 A - Tomorrow (灰色, 100 点)

2 回繰り上がる場合 (年末の日) に注意! 問題へのリンク 問題概要 ある暦では、1 年は 月あり、1 月は 日だけある (固定値)。 年 月 日の翌日を答えよ。 解法 年末のパターン、つまり かつ というパターンを見逃さないようにしよう! 年末のときは:答えは …

AtCoder ABC 096 A - Day of Takahashi (灰色, 100 点)

一瞬、各月の日数を考えないといけない気がして面倒だ......となった。でもその必要はなかった。 問題へのリンク 問題概要 2018 年 1 月 1 日から、2018 年 月 日までに、「月と日が等しい日」が何日あるかを数えてください。 解法 この手の問題では手を動か…

AtCoder ABC 084 A - New Year (灰色, 100 点)

時刻の問題! 問題へのリンク 問題概要 今、12 月 30 日の 時です ()。年が明けるのは何時間後でしょうか。 解法 12 月 30 日と、12 月 31 日の 2 日間の時間をすべて合わせると 時間 あります。そのうちの 時間がすでに経過しているということなので、年が…

AtCoder ABC 065 A - Expired? (灰色, 100 点)

これはちゃんと整理するの大変だと思う! 問題へのリンク 問題概要 ある商品は、賞味期限を過ぎてから 日後まではお腹を壊さずに食べることができる。一方、賞味期限を過ぎてから食べると美味しくありません。 その商品を、賞味期限の 日前に購入し、その日…

AtCoder ABC 057 A - Remaining Time (灰色, 100 点)

24 時制の問題 問題へのリンク 問題概要 24 時制で 時から 時間後の時刻を 24 時制で表したものを求めよ。 解法 基本的には を計算すればよい。もし 24 を超えたら 24 を引けばよい。 あるいは、剰余演算子「%」を用いて (A + B) % 24 を求めてもよい。 #inc…

AtCoder ABC 328 B - 11/11 (灰色, 200 点)

少し複雑めの全探索。 問題へのリンク 問題概要 1 年が ヶ月からなる暦がある。 月はそれぞれ 日ある。 この暦において、ゾロ目に日付は何日あるかを答えよ。 制約 考えたこと について順に調べていけば良い。 自体がゾロ目でないとダメ がゾロ目なら、その…

AtCoder ARC 023 A - 経過日数 (試験管灰色)

日付に関する問題は Python が楽!! 問題へのリンク 問題概要 与えられた日付から、2014/05/17 までの経過日数 (負もありうる) を求めよ。 制約 "1988/07/03" から "2014/12/31" まで 考えたこと 全部 Python の datetime に任せる! コード import datetim…

AtCoder ARC 002 B - 割り切れる日付 (試験管灰色)

現在の AtCoder ではあまり出なさそうな問題。こういうのは Python 楽だね。 問題へのリンク 問題概要 (西暦) ÷ (月) ÷ (日) が整数となるような日付を「割り切れる日付」と呼ぶ。 日付が "2020/11/14" のようなフォーマットで与えられる。その日付以降の最…