adnss

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  23 随笔 :: 0 文章 :: 0 评论 :: 2891 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

描述
国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天)里,每天收到两枚金币;之后三天(第四、五、六天)里,每天收到三枚金币;之后四天(第七、八、九、十天)里,每天收到四枚金币……这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币(N为任意正整数)。

你需要编写一个程序,确定从第一天开始的给定天数内,骑士一共获得了多少金币。

输入
一个整数(范围1到10000),表示天数。
输出
骑士获得的金币数。
样例输入
6
样例输出
14
题意
第一天为 1 * 该段时间天数
之后两天 2 * 该段时间天数
在之后三天 3* 该段时间天数
每段时间获得的金币就是 该段时间天数*该段时间天数
最后算出n天一共得了多少金币。
思路
用for计算每天的金币数量,天数加一,金币也加一,如果天数和金币一样,每天金币再多加一个;
代码实现:

include<bits/stdc++.h>

using namespace std;
int main(){
int N,c=1,b=0;
cin>>N;
for(int i=1;i<=N;i+=c){//计算每天的金币数量
b=b+cc;
c=c+1;
if(N-i<c){
b+=(N-i)
c;
}
}
cout<<b;
return 0;
}

posted on   生吃椒盐小孩  阅读(79)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示