CSP历年复赛题-P2669 [NOIP2015 普及组] 金币
原题链接:https://www.luogu.com.cn/problem/P2669
题意解读:每连续i(1,2,3.....)天获得i枚金币,k天一共获得多少金币。
解题思路:
直接枚举连续的天数i,如果当前剩余的k天>=i,则金币累加i * i,同时剩余天数k = k - i
最后,要把剩余k天乘以i累加到结果
#include <bits/stdc++.h>
using namespace std;
int k, ans;
int main()
{
cin >> k;
int i;
for(i = 1; i <= k; i++) //枚举每个连续的天数
{
ans += i * i;
k -= i; //k是剩余的天数
}
ans += i * k;
cout << ans;
return 0;
}