P2669 [NOIP2015 普及组] 金币
题目背景
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);
}
相关文章:
P2669 [NOIP2015 普及组] 金币
题目背景 NOIP2015 普及组 T1 题目描述 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天&a…...
【2023】华为OD机试真题Java CC++ Python JS Go-题目0250-选修课
题目0250-选修课 题目描述 现有两门选修课,每门选修课都有一部分学生选修,每个学生都有选修课的成绩,需要你找出同时选修了两门选修课的学生,先按照班级进行划分,班级编号小的先输出,每个班级按照两门选修课成绩和的降序排序,成绩相同时按照学生的学号升序排序。 输入…...
lama cleaner
这里写自定义目录标题 安装参数包含的额外plugins 代码结构FreehandBackground RemovalInteractiveSeg 安装 conda create --name lamacleaner python3.10 pip install -r requirements.txt pip install gfpgan pip install realesrgan pip install rembg pip install .如果…...
制作一个简易的计算器app
github项目地址:https://github.com/13008451162/AndroidMoblieCalculator 1、Ui开发 笔者的Ui制作的制作的比较麻烦仅供参考,在这里使用了多个LinearLayout对屏幕进行了划分。不建议大家这样做最好使用GridLayout会更加快捷简单 笔者大致划分是这样的…...
48. 旋转图像
题目介绍 给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在** 原地** 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 示例 1: 输入:matrix [[1,2,3],[4,5,6]…...
“深入解析Spring Boot:从入门到精通的完整指南“
标题:深入解析Spring Boot:从入门到精通的完整指南 摘要:本文将深入解析Spring Boot框架,从入门到精通,为读者提供全面的指南。我们将介绍Spring Boot的基本概念、核心特性以及使用方法,并通过示例代码演示…...
【C++】C++11——包装器
文章目录 1. function包装器1.1 遇到的问题1.2 包装器的定义1.3 解决问题1.4 包装器的其他应用 2. bind2.1 bind的定义2.2 bind包装器绑定固定参数2.3 bind包装器调整传参顺序2.4 bind包装器的意义 1. function包装器 1.1 遇到的问题 我们首先来看一行代码: ret …...
插件使用权限管理软件(三)WebAPI项目IIS部署
前言 前面完成了WebAPI项目的接口服务类编写工作,接下来讲把项目部署到服务器的IIS上,让系统运行起来。 一. 项目发布 右键项目RightsManagementSystems.Web.Entry 选择“发布”选项 弹出发布选项界面,选择“文件夹”,点击下一步…...
[算法很美打卡] 多维数组篇 (打卡第二天)
文章目录 Z形打印边界为1的最大子方阵 Z形打印 package 每日算法学习打卡.算法打卡.七月份.七月二十七号;public class test1 {public static void main(String[] args) {int[][] matrix {{1, 2, 3, 4},{5, 6, 7, 8},{9, 10, 11, 12},};print(matrix);}static void print(int[…...
K8S初级入门系列之十一-安全
一、前言 安全是K8S重要的特性,在K8S初级入门系列之四-Namespace/ConfigMap/Secret章节,我们已经已经了解了Namespace,Secret与安全相关的知识。本篇将梳理K8S在安全方面的策略。主要包括两个方面,API安全访问策略以及Pod安全策略…...
【雕爷学编程】MicroPython动手做(02)——尝试搭建K210开发板的IDE环境6
#尝试搭建K210的Micropython开发环境(Win10) #实验程序之六:测试Microphone阵列算法 #尝试搭建K210的Micropython开发环境(Win10) #实验程序之六:测试Microphone阵列算法from Maix import MIC_ARRAY as mi…...
“深入解析Spring Boot:从入门到精通“
标题:深入解析Spring Boot:从入门到精通 摘要:本文深入解析了Spring Boot框架,从入门到精通,包括核心概念、特性、使用方法和示例代码。通过阅读本文,读者将对Spring Boot有一个全面的了解,并可…...
[自然语言处理] 自然语言处理库spaCy使用指北
spaCy是一个基于Python编写的开源自然语言处理库。基于自然处理领域的最新研究,spaCy提供了一系列高效且易用的工具,用于文本预处理、文本解析、命名实体识别、词性标注、句法分析和文本分类等任务。 spaCy的官方仓库地址为:spaCy-github。本…...
【新日语(2)】第6課 拓哉もさしみを食べたがってします
第6課 拓哉もさしみを食べたがっています 注释: 食べたがっています:食べ+たが+ています、想要吃。たがっています:たがる+ています、想要。 练习A 一、 例句 わたしは、明日、デパートへ行きます。 …...
uni-app 经验分享,从入门到离职(一)——初始 uni-app,快速上手(文末送书福利1.0)
文章目录 📋前言🎯什么是 uni-app🎯创建第一个 uni-app 项目🧩前期工作🧩创建项目(熟悉默认项目、结构)🧩运行项目 📝最后🎯文末送书🔥参与方式 &…...
Python爬虫实例之淘宝商品页面爬取(api接口)
可以使用Python中的requests和BeautifulSoup库来进行网页爬取和数据提取。以下是一个简单的示例: import requests from bs4 import BeautifulSoupdef get_product_data(url):# 发送GET请求,获取网页内容headers {User-Agent: Mozilla/5.0 (Windows NT…...
并发编程 | CompletionService - 如何优雅地处理批量异步任务
引言 上一篇文章中,我们详细地介绍了 CompletableFuture,它是一种强大的并发工具,能帮助我们以声明式的方式处理异步任务。虽然 CompletableFuture 很强大,但它并不总是最适合所有场景的解决方案。 在这篇文章中,我们…...
医学案例|ROC曲线之面积对比
一、案例介绍 为评价CT和CT增强对肝癌的诊断效果,共检查了32例患者,每例患者分别用两种方法检查,由医生盲态按4个等级诊断,最后经手术病理检查确诊其中有16例患有肝癌,评价CT个CT增强对肝癌是有有诊断效果并且试着比较…...
Kotlin线程的基本用法
线程的基本用法 新建一个类继承自Thread,然后重写父类的run()方法 class MyThread : Thread() {override fun run() {// 编写具体的逻辑} }// 使用 MyThread().start()实现Runnable接口 class MyThread : Runnable {override fun run() {// 编写具体的逻辑} }// …...
2.03 PageHelper分页工具
步骤1:在application.yml中添加分页配置 # 分页插件配置 pagehelper:helperDialect: mysqlsupportMethodsArguments: true步骤2:在顶级工程pom文件下引入分页插件依赖 <!--5.PageHelper --> <dependency><groupId>com.github.pagehe…...
基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
多种风格导航菜单 HTML 实现(附源码)
下面我将为您展示 6 种不同风格的导航菜单实现,每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...
QT: `long long` 类型转换为 `QString` 2025.6.5
在 Qt 中,将 long long 类型转换为 QString 可以通过以下两种常用方法实现: 方法 1:使用 QString::number() 直接调用 QString 的静态方法 number(),将数值转换为字符串: long long value 1234567890123456789LL; …...
HashMap中的put方法执行流程(流程图)
1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中,其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下: 初始判断与哈希计算: 首先,putVal 方法会检查当前的 table(也就…...
tomcat入门
1 tomcat 是什么 apache开发的web服务器可以为java web程序提供运行环境tomcat是一款高效,稳定,易于使用的web服务器tomcathttp服务器Servlet服务器 2 tomcat 目录介绍 -bin #存放tomcat的脚本 -conf #存放tomcat的配置文件 ---catalina.policy #to…...
安卓基础(Java 和 Gradle 版本)
1. 设置项目的 JDK 版本 方法1:通过 Project Structure File → Project Structure... (或按 CtrlAltShiftS) 左侧选择 SDK Location 在 Gradle Settings 部分,设置 Gradle JDK 方法2:通过 Settings File → Settings... (或 CtrlAltS)…...
VisualXML全新升级 | 新增数据库编辑功能
VisualXML是一个功能强大的网络总线设计工具,专注于简化汽车电子系统中复杂的网络数据设计操作。它支持多种主流总线网络格式的数据编辑(如DBC、LDF、ARXML、HEX等),并能够基于Excel表格的方式生成和转换多种数据库文件。由此&…...
嵌入式学习之系统编程(九)OSI模型、TCP/IP模型、UDP协议网络相关编程(6.3)
目录 一、网络编程--OSI模型 二、网络编程--TCP/IP模型 三、网络接口 四、UDP网络相关编程及主要函数 编辑编辑 UDP的特征 socke函数 bind函数 recvfrom函数(接收函数) sendto函数(发送函数) 五、网络编程之 UDP 用…...
