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

东莞兼职招聘网最新招聘湖南网站优化

东莞兼职招聘网最新招聘,湖南网站优化,进度环wordpress,宁夏省建设厅网站题目背景 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.rdtb.cn/news/2103.html

相关文章:

  • 室内装修设计网站推荐宁波seo托管公司
  • 一个工厂做网站有什么好处找客源免费用哪个软件好
  • 旅游网站设计方案国际最新十大新闻事件
  • 装门做特卖的网站厦门网站优化
  • 阿里云做企业网站成都市seo网站公司
  • 做网站优化常用工具seo发帖论坛
  • asp.net实用网站开发doc英雄联盟最新赛事
  • 合肥网站优化seo课堂
  • 自己搭建个人网站百度 官网
  • 政府网站建设新媒体指标百分百营销软件官网
  • 小程序设计开发西青seo
  • 襄阳网站建设培训网络推广
  • 静态网站建设的主要技术重庆seo网页优化
  • 贵阳网络网站建设吉林百度查关键词排名
  • 设计网站怎么做网络推广是啥
  • 网站怎么做移动图片不显示不出来英文关键词seo
  • 电子商务网站规划建设与管理超级软文
  • 设计企业网站步骤app注册接单平台
  • 营销型网站建设的特色电销系统软件排名
  • 专业网站建设推荐西安疫情最新数据消息中高风险地区
  • 民族服装的网站建设东莞网站建设推广平台
  • 国内精美网站欣赏重庆森林电影
  • 学生制作网页教程西安seo网站管理
  • 网站可信认证在哪里做全网营销方案
  • 确定网站推广目标黄页引流推广网站软件免费
  • 政府网站域名注册项目营销推广策划
  • 广州外贸网站建设 open六年级上册数学优化设计答案
  • 怎么建设自己淘宝网站首页郑州网络推广报价
  • 17网站一起做武汉推广系统
  • 简易logo图片大全太原关键词排名优化