#include <stdio.h> //sum 函数实现前k项的和 判断当第k天时今天发多少金币 int sum(int k) { int i=0; int sum=0; //加和到k 一定会有一个极限数字i 那么这个i就是当天发的工资 //这里有点抽象 大家可以自己打比方发现一下这个规律😘 for(i=1;i<k;i++) { sum+=i; if(sum>=k) break; } return i; } //递归实现 int fun(int k) { if(k>1) return fun(k-1)+sum(k); else return 1; } int main() { int k=0; scanf("%d",&k); int ret=fun(k); printf("%d\n",ret); return 0; } 写完真的很激动,思考的过程又烧脑又shuang!!!
为大家提供一种思路吧,当然还有更好的方法!!