Please sign in first.
公式
A - Leap Year 解説
by
A - Leap Year 解説
by
nok0
初心者の方へ
- プログラミングの学習を始めたばかりで何から手をつけるべきかわからない方は、まずは practice contest の問題A「Welcome to AtCoder」をお試しください。言語ごとに解答例が掲載されています。
- また、プログラミングコンテストの問題に慣れていない方は、 AtCoder Beginners Selection の問題をいくつか試すことをおすすめします。
- C++入門 AtCoder Programming Guide for beginners (APG4b) は、競技プログラミングのための C++ 入門用コンテンツです。
- Python入門 AtCoder Programming Guide for beginners (APG4bPython) は、競技プログラミングのための Python 入門用コンテンツです。
if 文を用いて問題文中の場合分けを実装しましょう。
\(x\) が \(y\) で割り切れるかの判定は、x % y == 0 かを確認することで行えます。ここで、x % y は \(x\) を \(y\) で割ったあまりで、% はあまりを求める演算子です。
\(x\) が \(y\) で割り切れるときに限り \(x\) を \(y\) で割ったあまりは \(0\) となるので、上のコードで割り切れるかの判定ができます。
今回の場合、if 文が複数になり、書き方によってはネストが深くなってしまいます。その場合、条件を満たす場合すぐに出力して return をすることで、深いネストを回避することができます。
実装例 (C++):
#include <bits/stdc++.h>
using namespace std;
int main() {
int y;
cin >> y;
if(y % 4) {
cout << 365 << endl;
return 0;
}
if(y % 100) {
cout << 366 << endl;
return 0;
}
if(y % 400) {
cout << 365 << endl;
return 0;
}
cout << 366 << endl;
return 0;
}
投稿日時:
最終更新: