自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 将一个数拆成连续自然数之和

【代码】将一个数拆成连续自然数之和。

2024-03-02 16:23:31 127 1

原创 动态规划与贪心

C++的贪心算法是一种基于贪心策略的算法,其中贪心策略是根据当前状态做出局部最优的选择,以期望最终能够得到全局最优解。贪心算法通常用于寻找最优解问题,尤其是当问题具有最优子结构性质时,即问题的最优解可以通过其子问题的最优解来推导得出。在这种情况下,贪心策略通常表现出良好的性能,并且可以很容易地被实现。在C++中,可以使用一些基本数据结构和算法来实现贪心算法。例如,可以使用STL中的vector、set、map等容器,以及sort、lower_bound等算法来实现贪心算法。

2023-09-12 11:35:40 281 7

原创 C++猜谜灯小游戏

端午节,又称端阳节、龙舟节、重午节、重五节、天中节等,日期在每年农历五月初五,是集拜神祭祖、祈福辟邪、欢庆娱乐和饮食为一体的民俗大节。端午节源于自然天象崇拜,由上古时代祭龙演变而来。仲夏端午,苍龙七宿飞升于正南中央,处在全年最“中正”之位,正如《易经·乾卦》第五爻:“飞龙在天端午是“飞龙在天”吉祥日,龙及龙舟文化始终贯穿在端午节的传承历史中。端午节是流行于中国以及汉字文化圈诸国的传统文化节日, 传说战国时期的楚国诗人屈原在五月初五跳汨罗江自尽,后人亦将端午节作为纪念屈原的节日;也有纪念伍子胥曹娥及介子推。

2023-06-24 21:07:07 211 1

原创 时间复杂度与时间限制

很好的工具(它们可以让我们避开很多坑,比如你以为这道题暴力做能拿满分,但算了时间复杂度后发现超出了时间限制. . . . . .你就不会再傻傻的用了很多时间编了一个暴力程序后信心满满的一提交发现超时了!一般会在题目中给出,常见的限制有 1/2/5/20 秒(s),有的时候也会用毫秒(ms)的形式给出。我们一般用时间复杂度这个概念来描述一个算法的耗时,这个概念详细定义比较复杂,可以简单理解为。时间复杂度就是基础运算的规模,更准确的定义可以参照下面的扩展阅读部分。比如上述的算法 1 与算法 2,我们通常会用。

2023-03-21 21:40:10 310

原创 P1028 [NOIP2001 普及组] 数的计算题解

P1028 [NOIP2001 普及组] 数的计算题解。来看一下样例:66 16 26 36 2 16 3 1定义:f[i]代表以i为开头的合法的数列。f[1]=1;1f[2]=2;22 1f[3]=2;33 1f[4]=4;44 14 24 2 1规律:f[i]=(f[1]+f[2]+...+f[i/2])+1(加一是指只有i这一个数字的合法的数列)。

2023-03-21 21:27:17 83

原创 前缀和(1)——详解一维前缀和(建议收藏!!)

我们设前缀和数组是sum数组,输入的数组是a,数组的长度是n。那么代表的就是a数组的前i项之和。i

2023-02-18 15:23:35 317 1

原创 洛谷P1080 [NOIP2012 提高组] 国王游戏(贪心、高精度经典练习题)

排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是:排在该大臣前面的所有人的左手上的数的乘积除以他自己右手上的数,然后向下取整得到的结果。国王不希望某一个大臣获得特别多的奖赏,所以他想请你帮他重新安排一下队伍的顺序,使得获得奖赏最多的大臣,所获奖赏尽可能的少。位大臣来玩一个有奖游戏。按 1、2、3 这样排列队伍,获得奖赏最多的大臣所获得金币数为 2;按3、2、1 这样排列队伍,获得奖赏最多的大臣所获得金币数为 9。一个整数,表示重新排列后的队伍中获奖赏最多的大臣所获得的金币数。

2023-01-27 16:41:49 178

原创 详解二分算法(一学就懂,一写就会)

小明:"小张,我问你一个问题:在1,3,5,6,7,9这些数中5在那个位置?小张:"这还不简单,5在第三个位置!我是按顺序来找的:1,3,5。小明:"那我告诉你1~100这些数,让你找其中100这个数,你也从1~100来一个一个数吗?小张:"那我会从100~1来数。小明:"那如果你是一个机器人,我再问你这个问题,问:55在哪个位置?可是你只能从1~100或100~1来数数,可是这样数太慢啦!小张:"那可以怎们来数呢?小明:"这就要用到二分法的方法来解决啦!二分法,是指将一个有序。

2023-01-24 16:35:32 6759 2

原创 洛谷P2677 [USACO07DEC]Bookshelf 2 B 题解

洛谷P2677 [USACO07DEC]Bookshelf 2 B 题解

2023-01-20 21:37:04 132

原创 【原创】如何判断三条边能否构造出一个三角形

众所周知,三角形是由不在同一直线上的三条线段首尾顺次连接所组成的封闭图形。常见的三角形按边分有普通三角形(三条边都不相等),等腰三角(腰与底不等的等腰三角形、腰与底相等的等腰三角形即等边三角形);按角分有直角三角形、锐角三角形、钝角三角形等,其中锐角三角形和钝角三角形统称斜三角形。

2023-01-20 20:54:05 647

原创 【原创】一文搞懂原码,反码,补码的概念

本文就来科普一下二进制的原码,反码,补码的概念吧!然后,将N的绝对值搞成二进制数,同时输出N的原码(要特判一下二进制数的位数)。那我们怎么样用代码输出一个数N的原码,反码和补码呢。众所周知,我们经常用的电脑(计算机)使用的是。(0是负,1是正),剩下的七位就是这个数的。二进制反码的概念:正数的反码就是其原码。二进制补码的概念:正数的补码就是其原码。,再将N的补码+1输出(要注意一下。除符号位取反(1变0,0变1)。负数(如果是负数,就标记一下)。二、原码,反码,补码的概念。,负数的反码是其原码。

2023-01-19 17:54:22 355

原创 RMQ算法以及ST算法

一.RMQ的定义RMQ的定义:RMQ是询问某个区间内的最值,主要以ST表的方式实现。二.ST表ST表(Sparse Table,稀疏表)是一种数据结构,用来解决区间内的一些问题(比如可以求区间最小值区间最大值区间GCD),ST表采用的倍增的思想,我们在使用ST表的时候,可以做到O(nlogn)的时间建表,做到用O(1)的时间去查询。优点:ST表运行效率高。树状图支持求改操作。缺点:ST表无法进行修改。树状图运行效率低。三.模板题思路这一题是需要用到。

2023-01-15 16:48:44 350

原创 完全平方数问题

用0至9这10个数字组成一位数、两位数、三位数、四位数各一个,使它们都是非零的完全平方数.例如1,36,784,9025就是满足条件的一种分法。完全平方数,怎么造呢?的完全平方数”,所以我们枚举时就只要枚举1~3就行了(0*0=0)。四位数的范围是1000~9999,只要枚举10~三位数的范围是100~999,只要枚举10~一位数的范围是0~9,注意题目说“它们都是。两位数的范围是10~99,只要枚举4~枚举完之后,我们依次将这。,如果是,就cnt++。step 1:一位数。step 3:三位数。

2023-01-13 20:11:25 737

原创 钱币组合加强版本+(两种方法)

小明手上有 N!!!张纸币(他的钱很奇怪,可以是任意的正整数), 现在他想知道 用这N种纸币可以组合出多少种不同的总额出来。Format。

2023-01-13 13:49:12 148

原创 n个数的倒序输出

2.用数组从1到n输入,从小到大排序,再从1到n输出。1.用数组从1到n输入,再从n到1输出。输入n个数,倒序输出(n

2023-01-12 23:42:43 1658

原创 树的入门(满满的干货,建议收藏)

树一种由n个节点组成的具有一定层次关系的有限数据集合。每个节点有0个或者n个子节点有一个根节点没有前驱只有后继),除根节点外每一个节点都有一个前驱0个或多个后继。树的叶子结点叶子结点是指只有父结点,没有子结点。叶子结点就像自然界中树上的叶子都长不出来新的树枝一样,故而得名。树中每个节点的度每个节点的度是指该结点的子结点个数。树的度树中结点的最大的度。分支结点度不为0的结点。树的深度即从根节点到叶子节点的行数(根结点深度是0)。每个结点的度。

2023-01-09 20:58:36 162 2

原创 #E. 加加加树的边权

我们仔细观察一下,发现这道题我们可以统计每个点的度,最后只要判断每个点度是不是偶数就行了。现在你可以进行M次操作,每次将一条树上路径的所有边的边权加1。现在给你操作序列,问是否存在一棵树,使得执行完这些操作后。如果能找出满足条件的树,输出YES,否则为NO。一棵树N个点,最开始时边权均为0。当树长成这样,可满足条件。接下来M行,描述操作。

2023-01-05 22:03:41 140

原创 #D. 树的路径覆盖之覆盖边1

给你一棵树,问你,对于树上的所有边,你至少用多少条线段覆盖住它们。(例如上图中5的子结点个数有3个,3/2=1,需要1条线段来覆盖。(6和4是一条,8已经被上面的以结点3开头的线段覆盖过了)这些线段不能围成一个环,可以在点上相交,但不能有重合边。子节点个数/2条线段来覆盖它与它的子结点们的这些边。拥有子结点个数大于等于2的结点。接下来N-1行,描述这个树。我们通过观察发现,每一个......

2023-01-05 21:33:06 152

原创 #F. 树的直径的问题

树的直径的问题

2023-01-05 12:23:55 93

原创 树的练习题之#D. Journey之二

接下来K个数字,代表你要走过的点的编号.当然你可以自己选择出发点及行进的路线。我们首先的思路是暴力枚举K个数字,可是这样的话只有48分!最后一行给出K个数字,代表点的编号。我们现在有一个大胆的猜测:我们是不是要从深度最深且是必须要走过的那个点开始遍历呢?,使得便利到该节点时又返回到根结点(因为该结点。接下来N-1行描述有关边的开始点,结束点.,不能再往下便利了,如果还有结点,那也不是。)的距离为0(因为该结点就是根节点)。我们先观察一下:这一组样例的起始点是。深度最深且是必须要走过的点。

2023-01-04 23:06:23 71

原创 树的练习题之#C. Journey

接下来N-1行,每行三个数,进来描述这个地图中的边,边长距离

2023-01-04 22:16:36 70

原创 扫雪系列I与扫雪系列II题解

这是一道树的题目。我们先来分析一下样例:总共5个结点,1是根节点。结点1与结点2建立了一条长度为1的边。结点2与结点3建立了一条长度为1的边。结点3与结点5建立了一条长度为1的边。结点3与结点4建立了一条长度为1的边。5是怎么得来的呢?我们用一个路线来表示:1->2,2->3,3->4,4->3,3->5,总共用的燃料数量是:1+1+1+1+1=5。但用这样的方法去写程序的话很难写,那还有什么方法吗?当然有,我们先把所有边的值都加起来,记作sum。

2023-01-03 22:13:29 154

原创 #F. 啸聚山林

#F. 啸聚山林

2023-01-02 22:00:25 94

原创 #Z1516. 质数之家

那么根据哥德巴赫猜想,证明只需要2个集合就可以(因为任何一个大于2的偶数都能表示为两个质数的和,而这两个质数一定能被分解为一段连续正整数的和)。,那么证明那个质数只需要一个集合,2也只要一个集合,一共2个集合,输出2。如果1加到n不是质数,但是是一个奇数且减去2是一个质数(比如33)的话。如果1加到n不是质数,但是是一个奇数且减去3是一个偶数(比如35)的话。,那么证明那个偶数需要两个集合,3也要一个集合,一共3个集合,输出3。,那么证明只需要这一个集合就行了,输出1。如果n是1,输出-1。

2022-12-29 21:18:27 87

原创 #Z1243. 完美数(类筛选法)

一个数是完美的,仅当它等于它的因数中比它小的所有数之和。例如:28=1+2+4+7+14,所以 28 是完美的。由此我们可以定义一个数的不完美值 F(N),代表 N 和比 N 小的所有 N 的因数之和的差的绝对值。例如:F(6)=|6-1-2-3|=0,现在给出两个正整数 A 和 B,请你求出 F(A)+F(A+1)+...+F(B)。

2022-12-24 21:37:50 136 1

原创 如何求出两个数的最大公因数

如何求出两个数的最大公因数

2022-12-24 15:17:05 561

原创 怎样求出一个数的约数个数

输入一个数字n,输出其约数。

2022-12-11 10:38:37 1181 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除