国王给骑士金币问题

国王发金币问题-Java实现 国王将金币作为工资,发放给忠诚的骑士。 第一天,骑士收到一枚金币;之后两天(第二天和第三天)里,每天收到两枚金币;之后三天(第四、五、六天)里,每天收到三枚金币;之后四天(第七、八、九、十天)里,每天收到四枚金币……这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币(N为任意正整数)。 请计算在前K天里,骑士一共获得了多少金币。 这... 阅读详情

国王给为他出生入死的忠诚骑士分金币, 第一天给骑士1枚金币,随后两天每天给骑士2枚金币,接着的三天每天给3枚金币,以此类推,随后的n天给n枚金币

分析:可以用下图来表示国王每天分发的金币数量,第一天给骑士1枚金币(下图中的第一行),随后两天每天给骑士2枚金币(图中第二行),接着的三天每天给3枚金币(图中第三行)...

                                                                        1

                                                                     2      2

                                                                  3      3     3

                                                              4      4      4     4

                                                                       ...

前面n行总计的天数是

                                totaldays = 1 + 2 +3+...+n = \frac{n(n+1)}{2},

总计发的金币数是

        ​​​​​​​        ​​​​​​​        ​​​​​​​        totalcoins = 1^2 + 2^2 + 3^2 + 4^4 +...+n^2

对于给定的天数m,只要找到这个天数在图中的第几行i,然后从该行总计发的金币数totalcoins减去m天到总天数 totaldays 之间未发的数量即可

        ​​​​​​​        ​​​​​​​        ​​​​​​​        coins = totalcoins - i * (totaldays - m)

代码如下

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
	int m;
	int total_days;
	int i;
	int total_coins = 0;

	printf("Please input the days:");
	scanf("%d", &m);
	
	for (i = 1; ; i++) {
		total_coins += i * i;
		total_days = i * (i + 1) / 2;
		if (total_days >= m)
			break;
	}

	total_coins -=  i * (total_days - m);

	printf("\nKnight got total %d coins at %d day\n", total_coins, m);

	return 0;
}

                                                  

国王骑士金币问题 本文以模拟算法的两种方式解题,同时附录递归算法(不建议使用)。 国王发放金币给骑士,按天数发。 天数n 1 2 3 4 5 6 7 8 每天的金币k 1 2 2 3 3 3 4 4 分组模拟: IO 输入天数n,输出金币总数res 循环 (按天数执行) 确定天数n>0的时候执行发放金币,故使用while循环 循环中代表每天发金币的操作,所以循环中包含n的变化 分组 ... 阅读详情

相关推荐

C/C++国王发金币 2023年5月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析

C/C++国王发金币 2023年5月 C/C++编程等级考试一级编程题 一、题目要求 1、编程实现 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天)里,每天收到两枚金币;之后三天(第四、五、六天)里,每天收到三枚金币;之后四天(第七、八、九、十天)里,每天收到四枚金币……这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币(N为任意正整数)。

青少年编程学习指导 1771

国王分金币(超详细版)

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

Ice_empathy的博客 2551

机器人视觉实战:用OpenCV搞定手眼标定(附完整C++代码)

本文详细介绍了使用OpenCV实现机器人视觉中的手眼标定技术,包括核心算法、工业场景优化及完整C++代码示例。通过解析坐标系转换问题,提供从数据采集到标定验证的全流程解决方案,帮助开发者在复杂工业环境中实现高精度机械臂与视觉系统的协同作业。

weixin_29306571的博客 481

国王发金币啦(c++)

国王发金币了c++

m0_75188587的博客 3028

考虑风和浪的影响的旋筒帆船航线优化方法研究

针对旋筒帆船进行航线优化的实现方法,包括升阻力系数的数值模拟、升阻力系数的多元非线性回归建模、旋筒帆船6DOF摇荡运动建模分析以及考虑风、浪影响的旋筒帆船的航线优化研究。

m0_63225885的博客 1163

态路小课堂丨三款800G光模块方案介绍—SR8/DR8/2FR4

800G QSFP-DD 2FR4光模块使用CWDM4波长(1271/1291/1311/1331nm),单通道速率为100G,通过MUX减小光纤的数目,其光学接口采用CS接口或双芯LC接口。

poposu的博客 2386

金币问题(国王将金币作为工资,发放给忠诚的骑士。)

题目描述 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币。 请计算在前K天里,骑士一共获得了多少金币。 输入 输入只有1...

xfsgdsgoy的博客 1万+

MIT液态神经网络(LNN)深度研究:原理、应用与未来

液态神经网络(Liquid Neural Networks, LNNs)代表了人工智能领域,特别是神经网络架构设计中的一次范式转移。它从根本上挑战了传统深度学习模型依赖大规模参数和静态架构的惯例,转而寻求一种更为动态、高效且受生物神经系统启发的计算范式。LNN的核心创新在于其将神经网络的计算过程从离散的、基于时间步的更新,转变为连续的、由微分方程驱动的动态系统演化。这种转变不仅赋予了模型前所未有的适应性和鲁棒性,还使其在处理复杂的时序数据和因果推断任务时表现出色。本章节将深入剖析LNN的技术原理,从其核心的

步子哥的博客 2590

国王将金币作为工资,发放给忠诚的骑士。 问题 G: 金币

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

weixin_30379973的博客 2034

【雷达通信】雷达信号处理仿真【含Matlab源码 2509期】

雷达信号处理仿真 完整的代码,方可运行;可提供运行操作视频!适合小白!

订阅付费专栏Matlab(奶茶价版),可赠送奶茶价版付费专栏指定代码1份; 904

华为OD机考双机位C卷 - 天然蓄水库(Java & Python& JS & C/C++ & GO )

华为OD机考双机位C卷 - 天然蓄水库(OD上机考试双机位C卷)。提供在线OJ刷题。Java、C++、Python、GO语言、C语言、JavaScript题解,并提供完整思路讲解。

算法大师! 1740

国王将金币作为工资,发放给忠诚的骑士。

题目描述 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后2天(第2天和第3天),每天收到2枚金币;之后3天(第4,5,6天),每天收到3枚金币;之后4天(第7,8,9,10天),每天收到4枚金币……这种工资发放模式会一直延续下去:当连续n天每天收到n枚金币后,骑士会在之后的连续n+1天里,每天收到n+1枚金币(n为任意正整数)。你需要编写程序,确定从第1天开始的给定天数内,骑士一共获得了多少金币。 算法思路 每日的金币获取数为1 2 2 3 3 3 4 4 4 4 5 5 5 5 5

qq_32313227的博客 8745

QCM2290 PM-3 如何让mirco-usb支持关机充电

PM4125-3插入type-C触发开机进入关机充电的CC脚中断条件是否可以软件上屏蔽, 做到只通过VBUS中断即可触发进入关机充电模式,达到和PM4125-2的效果一样只要插入micro USB 就可以触发进入关机充电模式。硬件团队提议修改寄存器 SCHG_L_MISC_SYSOK_CFG 0x164A bit[4] 目前修改如下 — a/BOOT.XF.4.1/boot_images/QcomPkg/Library/PmicLib/target/Agatti_pmCocos/psi/pm_confi

墨染天玑的博客 442

金币(找规律累加)

金币 描述 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天 (第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚 金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式 会一直这样延续下去:当连续 N 天每天收到 N 枚金币后,骑士会在之后的连续 N+1 天 里,每天收到 N+1 枚金币。 请计算在前 K 天里,骑士一共获得了多少金币。 【输入输出样例 1】 coin.in coin.out 6 14 【输入输出样例 1 说明】 骑士

qq_45891676的博客 629

三菱FX系列PLC模拟量输入AD模块的使用方法和相关编程设置详解

三菱FX系列PLC模拟量输入AD模块的使用方法和相关编程设置详解

Robot_PLC_HMI_Automation 1万+

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

信息学奥赛一本通c++语言——1100:金币 && 洛谷:计算机科学教育新生态P2669:金币

以下为一本通的题目 【题目描述】 国王将金币作为工资,发放给忠诚的骑士。第1天,骑士收到一枚金币;之后两天(第2天和第3天)里,每天收到两枚金币;之后三天(第4、5、6天)里,每天收到三枚金币;之后四天(第7、8、9、10天)里,每天收到四枚金币……这种工资发放模式会一直这样延续下去:当连续n天每天收到n枚金币后,骑士会在之后的连续n+1天里,每天收到n+1枚金币(n为任意正整数)。 你需要编写一...

xishanmeigao2918的博客 825

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

金币ᅟᅠᅟᅠ

国王将金币作为工资,发放给忠诚的骑士。之后两天(第二天和第三天)里,每天收到两枚金币;之后三天(第四、五、六天)里,每天收到三枚金币;之后四天(第七、八、九、十天)里,每天收到四枚金币……这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币(N为任意正整数)。你需要编写一个程序,确定从第一天开始的给定天数内,骑士一共获得了多少金币。

✨ 欢迎来到【Seal ^_^ 的优快云博客】!✨ 4620

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

国王金币题目

题目 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天)里,每天收到两枚金币;之后三天(第四、五、六天)里,每天收到三枚金币;之后四天(第七、八、九、十天)里,每天收到四枚金币……这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币(N为任意正整数)。 你需要编写一个程序,确定从第一天开始的给定...

m0_37733257的博客 1860

金币

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

lzx's blog 416

入门3 金币

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

咚咚轩的博客 248

国王撒金币问题

国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1N+1天里,每天收到N+1N+1枚金币。 请计算在前KK天里,骑士一共获得了多少金币。 输入格式 一...

delete_bug的博客 1486

电子协会 C语言 1级 74 、骑士的金币(2020年真题)

电子协会 C语言 1级 74 、骑士的金币(2020年真题)

青少年趣味编程 2101

C++循环结构——金币

题目描述 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这样延续下去:当连续 nn 天每天收到 nn 枚金币后,骑士会在之后的连续 n+1n+1 天里,每天收到 n+1n+1 枚金币。 请计算在前 kk 天里,骑士一共获得了多少金币。 输入格式 一个正整数 kk,表示发放金币的天数。 输出格式 一个正整数,即骑士

weixin_48726365的博客 2235

骑士发放金币

题目描述 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天 (第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……这种工资 发放模式会一直这样延续下去:当连续n天每天收到n枚金币后,骑士会在之后的连续n+1天里,每天收到n+1枚全币?请计算在前人天里,骑士一共获得了多少金币。

2401_83966009的博客 682
上一篇: 约瑟夫环的两种实现方法
九月de️云
博客等级 码龄6年 1粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值