当前位置: 首页 > news >正文

视频短链接生成器优化大师如何删掉多余的学生

视频短链接生成器,优化大师如何删掉多余的学生,网站建设开票内容,人才招聘网站开发题目背景 NOIP2015 普及组 T1 题目描述 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天&a…

题目背景

NOIP2015 普及组 T1

题目描述

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

请计算在前 k k k 天里,骑士一共获得了多少金币。

输入格式

一个正整数 k k k,表示发放金币的天数。

输出格式

一个正整数,即骑士收到的金币数。

1.题目分析

该题主要考察的是对循环的使用,一些数学公式:
等差数列求前n项和:n*(a1 + an)/2.
这里还可以考虑使用递归。

2.题目思路

写一个递归函数求n*n的前n项和,用于计算连续n天后发的总金币数。
键入天数d,需要 根据d计算是第n轮发n个金币,可以得到他们之间的关系是:1 + 2 +3 … +n =d.
所以可以根据等差数列的前N项公式求得,得到N的值后,调用递归函数,如果恰好不是n轮结束的天数,则需要减去多余的金币数。如:第4天: 1 +2 + 2 +3 + 3 等于 1 + 2 +2 +3 +3 +3 减去 一个3

3.代码实现

#include <stdio.h>
//写一个函数,表示求n*n的前n项和
int res(int n) {if (n == 1) {return 1;}return n * n + res(n - 1);
}int main() {/*** d,表示天数*/int n, sum, d;n = 0;//re表示计算时超出的金币数int re;scanf("%d", &d);//判断天数d和第n次发n枚金币之间的关系while (true) {if (n * (n + 1) >= d * 2) {break;}n++;}//求总金币数sum = res(n);re = (n * (n + 1) - d * 2) / 2 * n;//总金币数减去超出的printf("%d", sum - re);
}
http://www.yayakq.cn/news/869516/

相关文章:

  • 怎么用wordpress搭建网站做展馆好的设计网站
  • 建设网站需要多少钱济南兴田德润厉害吗七台河建网站
  • 做产品宣传网站多少钱做高清视频的网站
  • 东莞企业网站建设费用外贸工艺品网站建设
  • 教务在线网站开发报告书新手建什么网站赚钱
  • 网站建设初衷seo托管公司
  • 郑州做网站服务器网络营销方案
  • 网站建设合同标的怎么写培训行业网站建设
  • 珠海移动网站建设报价asp网站跳转浏览器
  • 网站建设方案标准模板肥乡网站建设
  • 专业网站构建网站的模版要怎么重新做
  • 网站开发项目总结报告徐州网站建设多少钱
  • 小程序网站建设的公司网站开发技术及开发环境
  • 本机iis网站大棚建设的网站
  • 如何建网站平台卖东西下载四川天府健康二维码
  • 天津做网站seo的求职简历在哪个网站做
  • 网络营销网站建设的角度芯片商城网站建设
  • 免费海外网站cdn加速海外推广平台有哪些?
  • 东莞个人网站设计律师关键词推广
  • 做国珍新时代 网站佛山最新通知今天
  • 搭建企业网站公司网络推广的作用
  • 网站建设合同 英文范文系统优化软件排行榜
  • 怎么让百度收录我的网站html5 公众号 网站开发
  • 一般用网站服务器无锡网站建设制作设计
  • 有没有专门做ppt的网站网站建设零基础好学吗
  • 做木材加工的企业网站首页扶贫网站建设的意义
  • 图片网站cms网页制作html完整代码
  • 网站短片怎么做广州服装设计公司有哪些
  • 高端h5网站开发做pc网站排名
  • 网站的按钮怎么做的韩国做网站网站违法不