C++,Lutece 1264 人民币的构造

news/2025/3/19 21:49:32/文章来源:https://www.cnblogs.com/l25428455/p/18781927
/*
Migrated from Lutece 1264 人民币的构造
Description
我们都知道人民币的面值是1、2、5、10,为什么是这个数值呢,我们分析了下发现,
从1−10的每个数字都可以由每种面值选出至多一张通过加法和减法(找钱)来构成,
(比如:1+2=3,5−1=4,5+1=6,5+2=7,1+2+5=8,10−1=9)
但是实际上,我们只需要1、2、7三种面值就可以组成1−10的每一个数字了(1+2=3,7−1−2=4,7−2=5,7−1=6,7+1=8,7+2=9,7+1+2=10)
那么现在问题来了,给一个数n,请问最少需要多少种不同的面值就可以构成从1−n的所有数字,
注意在构成每一个数字时同种面值不能超过1张。
Input
一个数字n(1<=n<=100000)
Output
一个数字,代表最少需要多少种不同的面值可以构成从1−n的所有数字。
*///人民币竟然有2元的面值吗(○´・д・)ノ//等比数列求和公式, 首项a,公比r,项数k
//前k项和为S = a*(r^k-1)/(r-1)
//S = a+a*r+a*r^2+...+a*r^(k-1) 
//r*S = 0 + a*r+a*r^2+a*r^3+...+a*r^(k-1)+a*r^k = S-a+a*r^k
//S*(r-1) = a*(r^k-1)
//S = a*(r^k-1)/(r-1)
//首项a,末项b,公比r
//S = (br-a)/(r-1)//1+3+9+...+3^k = (3^(k+1)-1)/2//1 --> 1//[x-1,x,x+1] 
//1,3 --> 1,[2,3,4] //1+3=4//[x-3-1,x-3,x-3+1,x-1,x,x+1,x+3-1,x+3,x+3+1] //9 = 1+2*4
//1,3,9 --> 1,[2,3,4],[5,6,7,8,9,10,11,12,13] //1+3+9=13//1,3,9,...,3^(k-1) --> 1,2,3,...,3^(k-1)+(1+3+9+...+3^(k-2))=3^(k-1)+(3^(k-1)-1)/2 = (3^k-1)/2#include <iostream>
#include <cmath>
int main(){int n;std::cin>>n;//(3^k-1)/2 >= n//3^k>=2n+1//k>=log3(2n+1)double k = std::log(2*n+1)/std::log(3);//std::log(x)计算以e为底的对数//e^(k*log(3)) = 2n+1//(e^log(3))^k = 3^k = 2n+1//换底公式: logA(x) = logB(x)/logB(A)//B^i = x,B^j = A//A^i = B^(ij) = x^j//A^(i/j) = B^i = xstd::cout<<int(k)+int((k-int(k))>0)<<std::endl;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/901728.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

golang的GC机制

一、垃圾回收 什么是垃圾回收?垃圾回收(GC,garbage collection)是自动内存管理的一种形式,通常由垃圾收集器收集并适时回收或重用不再被对象占用的内存,比如众所周知的Java语言就能很好的支持GC。后起之秀——Go语言也同样支持垃圾回收,它使得Go程序员在编写程序的时候不…

fastjson漏洞复现(fastjson 1.2.47)

原理: Fastjson 的 @type 字段允许反序列化时动态指定类,攻击者可以通过指定带有危险行为的类,并结合 RMI/LDAP 远程加载恶意类,从而实现命令执行。开启vulhub靶场//如何验证是否存在fastjson反序列化漏洞 有json数据传输的地方可能存在 可以尝试使用dnslog带外但是不知道…

基于神经网络逆同步控制方法的两变频调速电机控制系统matlab仿真

1.课题概述两电机变频调速系统是一个多输入多输出非线性强耦合的控制系统。本课题使用神经网络构造原系统的a阶逆系统,设计线性闭环调节器进行控制,通过matlab对系统进行仿真。对两电机变频调速系统更为精确地实现了张力和速度间的解藕控制。2.系统仿真结果 (完整程序运行后…

使用gradio实现实时语音识别

这里通过gradio来实现实时语音识别,通过上传一个文件,当点击提交后则在右侧输出其相应识别的文字。 实现代码比较简单,如下所示: import gradiodef convert(file_bytes):# 语音识别方法,其中file_bytes是采样率与对应numpy.ndarray实例return recognition_func(file_bytes[1])d…

英语四级跟练计划第一天

前言 今天给英语四级报了名,以我以往英语的水平来看,如果不早早开始复习,绝无通过的可能,走投无路的我只好去向deepseek求助,上一次320分的考生,这一次该付出何等的努力才可以考到425分,如此为我制定了90天的四级复习计划。我相信有很多人和我一样,都被英语四级通过给困…

202107191556 - 层次分析法计算流程

构造矩阵 一致性检验计算最大特征值计算一致性指标CI CI = ( λ - n ) / ( n - 1 )随机一致性指标RI取值计算一致性比率CR计算特征向量列向量归一化 求行和后归一化根据特征向量求最大特征值计算过程

crontab 命令

crontab -l 查看所有任务 crontab -e 编辑任务* * * * * /www/server/php/82/bin/php /www/wwwroot/default/1.php >> /www/wwwroot/default/cron_log.log 2>&1cd /www/wwwroot/www.pk777slots.com/ && php think test在那个目录运行 cd /www/wwwroot/www…

python实验一 20241202王凯

课程:《Python程序设计》 班级: 2412 姓名: 王凯 学号:20241202 实验教师:王志强 实验日期:2025年3月12日 必修/选修: 公选课 1.实验内容 (1)提前了解了一下python,了解它的地位排名,并熟悉Python开发环境;(2)练习Python运行、调试技能;(编写书中的程序,并进行…

2021-PTA模拟题-L2-3 这是二叉搜索树吗?(递归)

递归+二叉搜索树的性质做题历程:拿到手就开始建树,结点太多了所以不能数组建树,就结构体建树,建完发现还得建镜像,就懒得干了,去找大佬们的题解,发现大家都是直接通过二叉搜索树的性质来递归左右子树,一气呵成......还是做题做少了,照葫芦画瓢才过的。。。AcCode: #inc…

2021-PTA总决赛-L2-3 这是二叉搜索树吗?(递归)

递归+二叉搜索树的性质做题历程:拿到手就开始建树,结点太多了所以不能数组建树,就结构体建树,建完发现还得建镜像,就懒得干了,去找大佬们的题解,发现大家都是直接通过二叉搜索树的性质来递归左右子树,一气呵成......还是做题做少了,照葫芦画瓢才过的。。。AcCode: #inc…

Django数据库迁移命令

Django数据库迁移命令 迁移命令 migrate python manage.py migrate # 全部项目 python manage.py migrate AppName # 一个项目 执行迁移命令必须确保当前在项目目录下(执行ls命令能看到 manage.py文件), 然后使用 python manage.py migrate 即可。 如果IDE为pycharm也可以…