NOIP2015年普级组试题 金币

NOIP2015年普级组试题 金币

输入样例1
6
输出样例1
14
输入样例2
1000
输出样例2
29820
数据说明

对于100%的数据,0<K<10,001。

思路

有点水,不说了,直接看代码吧。

代码
#include<cstdio>
using namespace std;
int main()
{
	bool t=0;//初始化
	int k,sum=0,a=0,b=0;//初始化
	scanf("%d",&k);//读入
	while (t==0)//求骑士收到的金币数
	{
		a++;b+=a;
		sum+=a*a;//求第b日是共能拿的金币数
		if (b>=k) {t=1;sum-=(b-k)*a;}//求是否到了第K日并处理日子超出情况
	}
	printf("%d",sum);//输出
	return 0;
}