#include<stdio.h> int main() { //天数n int n; scanf("%d",&n); //金币累加结果sum int sum=0; //每i天获得i个金币 int i=1; while(n!=0) { sum=sum+i*i; //总天数里减去相应的i天 n=n-i; //下一个i天 i++; //判断剩余天数是否够接下来的i+1天区间 //够则继续循环直至天数为0 //不够就算接下来i+1区间剩余天数的金币 if(n<i) { sum=sum+n*i; n=0; } } printf("%d\n",sum); return 0; }