题解 | #[NOIP2015]金币#

[NOIP2015]金币

https://www.nowcoder.com/practice/8f71f5670e6a45118d24d13868a2da9e

#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!!!

为大家提供一种思路吧,当然还有更好的方法!!

全部评论
点赞 回复 分享
发布于 11-11 18:39 天津

相关推荐

11-15 18:39
已编辑
西安交通大学 Java
全村最靓的仔仔:卧槽,佬啥bg呢,本也是西交么
点赞 评论 收藏
分享
10-15 09:13
已编辑
天津大学 soc前端设计
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务