等差数列の和の公式を使ってもいいし、素直に for
文を足してもいい。
問題概要
正の整数 が与えられる。
の値を答えよ。
解法 1
素直に for
文で足していく方法。
#include <bits/stdc++.h> using namespace std; int main() { int N; cin >> N; int res = 0; // 答えを表す辺数 for (int i = 1; i <= N; ++i) { res += i; // 1 から順に N まで足していく } cout << res << endl; }
解法 2
等差数列の和の公式
を用いる方法。N * (N + 1) / 2
を計算すればよい。
#include <bits/stdc++.h> using namespace std; int main() { int N; cin >> N; cout << N * (N + 1) / 2 << endl; }