[yukicoder] No. 1256 連続整数列
問題
方針
\( A = 1 \) のとき条件を満たす連続整数列は存在しません。負の整数の数を \( m \)、正の整数の数を \( n \) とすると、\( n > m \) を満たす必要があり、\( n= m + 1 \) のとき、連続整数列の和は \( m + 1 \) となります。\( n + m \geq 1 \) より、\( m \neq 0 \) なので、\( A = 1 \) のとき存在しないことが分かります。また、\( n > m + 1 \) のとき、連続整数列の和は \( 1 \) より大きくなります。
一方で、\( A \neq 1 \) のとき、\( n = m + 1 \) とすることで、\( m + 1 = A \) を満たす \( m \) が存在します。
コード
#include <bits/stdc++.h> using namespace std; typedef long long ll; int main() { int A; cin >> A; if (A == 1) { cout << "NO\n"; } else { cout << "YES\n"; } return 0; }
ディスカッション
コメント一覧
まだ、コメントがありません