//2345Gold Coins
#include <iostream>
#include <stdio.h>
#define FILE_DEBUG
#ifdef FILE_DEBUG
#include <fstream>
#endif
using namespace std;
int main(int argc, char *argv[])
{
#ifdef FILE_DEBUG
ifstream fin;
fin.open("input.txt");
cin.rdbuf(fin.rdbuf()); // assign file's streambuf to cin
#ifdef _C_LAN_
freopen("input.txt", "r", stdin);
#endif
#endif
#ifdef FILE_DEBUG
ofstream fout;
fout.open("output.txt");
cout.rdbuf(fout.rdbuf()); // assign file's streambuf to cout
#ifdef _C_LAN_
freopen("output.txt", "w", stdout);
#endif
#endif
#define MAX_NUM 10010
long day_pay[MAX_NUM], total_pay[MAX_NUM], now_pay = 0, now_day = 0
, change_day = 0;
for (int i = 1; i < MAX_NUM; i ++)
{
now_day ++;
if (now_day - change_day >= now_pay)
{
now_pay ++;
change_day = now_day;
}
day_pay[i] = now_pay;
if (i == 1)
{
total_pay[i] = 1;
}
else
{
total_pay[i] = total_pay[i - 1] + day_pay[i];
//cout << "day " << i << " pay " << day_pay[i] << endl;
}
}
int case_sum, day;
cin >> case_sum;
while (case_sum --)
{
while (cin >> day && day > 0)
{
cout << day << " " << total_pay[day] << endl;
}
if (case_sum > 0)
cout << endl;
}
return 0;
}
ZOJ 2345 Gold Coins
最新推荐文章于 2017-08-22 12:59:14 发布