スクラッチブラシHDOJ(2)[HDOJ1001 - 合計通報]
フェイス質問
和問題
制限時間:1000/500 MS(Javaの/その他)メモリ制限:32768分の65536 K(Javaの/その他)
問題の説明
ねえ、HDOJ(杭州Dianzi大学オンライン判事)へようこそ。
この問題では、あなたのタスクは、SUM(N)= 1 + 2 + 3 + ... + Nを計算することです。
入力
入力は整数の一連のN、1行につき1つの整数からなります。
出力
各場合について、1つのラインの出力SUM(n)は、空行が続きます。もし、結果が32ビット符号付き整数の範囲内であろうと仮定することができます。
サンプル入力
1
100
サンプル出力
1
5050
著者
DOOM III
推薦します
我々は慎重にあなたのためのいくつかの同様の問題を選択している:1002 1090 1003 1091 1004
翻訳
行ごとの数は、他のすべてのライン出力数は、この数が1から入力された番号に添加しています。
思考
循環?各ラインの入力は32ビットであるため、ああ、確かではありません。したがって、あなたは、よく知られた式を使用する必要があります -
したがって、各数値は、O(1)要求することができます。
コード
#include <iostream>
int main(int argc, char ** argv)
{
std::ios_base::sync_with_stdio(false);
long long x;
while (std::cin >> x)
std::cout << x * (x + 1) / 2 << std::endl << std::endl;
//底下就是暂停用的,不用管。
#ifdef __EDWARD_EDIT
std::cin.get();
std::cin.get();
#endif
return 0;
}