问题 H: 整数和
时间限制: 1 Sec 内存限制: 32 MB
献花: 28 解决: 27
[献花][花圈][TK题库]
题目描述
编写程序,读入一个整数N。若N为非负数,则计算N 到2N 之间的整数和;若N为一个负数,则求2N 到N 之间的整数和。
输入
第一行表示样例数m,接下来m行每行一个整数N,N的绝对值不超过100。
输出
输出m行,每行表示对应的题目所求。
样例输入
2
2
-1
样例输出
9
-3
提示
注意N可能为负数
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <cstring>
#include <fstream>
#include <string>
#include <cmath>
#include <algorithm>
#include <queue>
#include <ctime>
using namespace std;
int main()
{
#ifdef _DEBUG
//freopen("data.txt", "r+", stdin);
fstream cin("data.txt");
#endif // _DEBUG
int m, N, sum ;
cin >> m;
while (m--)
{
cin >> N;
N < 0 ? (cout << "-") : (cout << "");
sum = 0;
for (int i = abs(N), TN = 2 * i; i <= TN; ++i)
sum += i;
cout << sum << endl;
}
#ifdef _DEBUG
cin.close();
#ifndef _CODEBLOCKS
system("pause");
#endif // !_CODEBLOCKS
#endif // _DEBUG
return 0;
}
/**************************************************************
Problem: 2000
User: Sharwen
Language: C++
Result: 升仙
Time:2 ms
Memory:1704 kb
****************************************************************/