自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 836. 合并集合--C++

一共有 nn 个数,编号是 1∼n1∼n,最开始每个数各自在一个集合中。M a bQ a b。

2024-08-10 17:32:22 228

原创 125. 耍杂技的牛

农民约翰的 NN 头奶牛(编号为 1..N1..N)计划逃跑并加入马戏团,为此它们决定练习表演杂技。奶牛们不是非常有创意,只提出了一个杂技表演:叠罗汉,表演时,奶牛们站在彼此的身上,形成一个高高的垂直堆叠。奶牛们正在试图找到自己在这个堆叠中应该所处的位置顺序。这 NN 头奶牛中的每一头都有着自己的重量 WiWi 以及自己的强壮程度 SiSi。一头牛支撑不住的可能性取决于它头上所有牛的总重量(不包括它自己)减去它的身体强壮程度的值,现在称该数值为风险值,风险值越大,这只牛撑不住的可能性越高。

2024-08-10 13:44:26 501

原创 913. 排队打水

有 nn 个人排队到 11 个水龙头处打水,第 ii 个人装满水桶所需的时间是 titi,请问如何安排他们的打水顺序才能使所有人的等待时间之和最小?

2024-08-07 20:55:48 224

原创 905. 区间选点--C++

给定 NN 个闭区间 [ai,bi][ai,bi],请你在数轴上选择尽量少的点,使得每个区间内至少包含一个选出的点。输出选择的点的最小数量。位于区间端点上的点也算作区间内。

2024-08-07 20:52:14 416

原创 P1803 凌乱的yyy / 线段覆盖--C++

第一行是一个整数 nn,接下来 nn 行每行是 22 个整数 ai,bi (ai<bi)ai​,bi​ (ai​<bi​),表示比赛开始、结束的时间。由于 yyy 是蒟蒻,如果要参加一个比赛必须善始善终,而且不能同时参加 22 个及以上的比赛。现在各大 oj 上有 nn 个比赛,每个比赛的开始、结束的时间点是知道的。yyy 认为,参加越多的比赛,noip 就能考的越好(假的)。所以,他想知道他最多能参加几个比赛。快 noip 了,yyy 很紧张!一个整数最多参加的比赛数目。

2024-08-05 10:30:11 290

原创 P2240 【深基12.例1】部分背包问题

阿里巴巴走进了装满宝藏的藏宝洞。藏宝洞里面有 N(N≤100)N(N≤100) 堆金币,第 ii 堆金币的总重量和总价值分别是 mi,vi(1≤mi,vi≤100)mi​,vi​(1≤mi​,vi​≤100)。阿里巴巴有一个承重量为 T(T≤1000)T(T≤1000) 的背包,但并不一定有办法将全部的金币都装进去。他想装走尽可能多价值的金币。所有金币都可以随意分割,分割完的金币重量价值比(也就是单位价格)不变。接下来 NN 行,每行两个整数 mi,vimi​,vi​。第一行两个整数 N,TN,T。

2024-08-04 16:43:13 360

原创 lower_bound函数和upper_bound函数

函数都是 C++ 标准库算法,用于在。,指向满足特定条件的元素位置。和 upper_bound。

2024-08-04 15:53:41 836

原创 【洛谷】P1928 外星密码--C++

解开密码的第一道工序就是解压缩密码,外星人对于连续的若干个相同的子串 XX 会压缩为 [DX][DX] 的形式(DD 是一个整数且 1≤D≤991≤D≤99),比如说字符串 CBCBCBCBCBCBCBCB 就压缩为 [4CB][4CB] 或者[2[2CB]][2[2CB]],类似于后面这种压缩之后再压缩的称为二重压缩。如果是 [2[2[2CB]]][2[2[2CB]]] 则是三重的。它可以处理一种特殊格式的输入,并将其展开成一个普通字符串。输入一行,一个字符串,表示外星人发送的密码。

2024-08-03 12:37:27 503

原创 7-1 红色警报--C++

战争中保持各个城市间的连通性非常重要。本题要求你编写一个报警程序,当失去一个城市导致国家被分裂为多个无法连通的区域时,就发出红色警报。注意:若该国本来就不完全连通,是分裂的k个区域,而失去一个城市并不改变其他城市之间的连通性,则不要发出警报。

2024-07-30 14:37:53 520

原创 模拟队列--C++

用数组来表示队列,怎么表示呢?我们先假设hh为头,tt为尾,当弹出队头的时候我们只需要把hh加一下就连可以了,相反tt一样也可以。

2024-07-29 17:34:01 296

原创 数组模拟单调栈--C++

本题的计算量较大,用暴力算法会超时,的用别的方法,我们假设在左边找第一个比它小的数,那么在左边出现一次的数如果比右边大了,那么就不会在出现了,我们将它删除掉就可以了,用这个方法我们可以的得到一个从小到大的数列。

2024-07-29 16:17:15 662

原创 单链表----数组表达

本题:我们用数组进行表达,最大的特点就是用空间换时间,可以节约时间。

2024-07-25 15:03:55 427

原创 【洛谷】P3799 小 Y 拼木棒——C++

我们会用到高中的公式数列的n(n-1)....1/(1+2+....n),其次我们会用大一点的数使用两次,小的的数和在一起,要注意两小的数相同的情况。

2024-07-24 11:11:18 469

原创 【洛谷】P1088 [NOIP2004 普及组] 火星人——C++

本题我们会用到函数next_permutation(start,end),是头文件algorithm标准库中的一个标准函数,用来表示[start,end]内存的数组中产生一个字典排序,比如[1 , 2 ,3]到[2 ,3, 1]再到[3 , 1, 2]这样的,这个函数的复杂度为(n!

2024-07-23 22:18:37 286

原创 【洛谷】P1157 组合的输出

【代码】【洛谷】P1157 组合的输出。

2024-07-23 21:40:36 121

原创 【洛谷】P1618 三连击(升级版)--C++

我们先枚举一个3位数来确定另外两个,通过比例就可以求出另外两个,最后在检验得到的结果是否共同具有9个不同数子,就OK了。

2024-07-22 13:46:11 155

原创 【洛谷】P2089 烤鸡——C++

本题用简单的方式就可以完成了,直接用十重循环就OK了。

2024-07-22 11:46:42 337

原创 【洛谷】P2241 统计方形(数据加强版)——C++

关于求正方形的个数,我们可以想向一下只有n=1,m=1的时候正方形为1,当n=2,m=2的时候小正方形增加4个,总共为5个,以此类推,我们可以发现s=1*1+2*2+......+min(n,m);可以自己去推理一下,同时我们要注意本题最后求出的结果较大,所以我们要用到long long形,连n,m也要注意用long long否则的话,与更广的表达式遇到之前可以会溢出,可以试一下。本题,我们会用到一个求矩阵的公式。

2024-07-22 10:39:11 758

原创 794. 高精度除法

【代码】794. 高精度除法。

2024-07-18 14:44:37 117

原创 单链表的创建与遍历--C

【代码】单链表的创建与遍历--C。

2024-07-18 09:25:13 369

原创 790. 数的三次方根

注意:细分条件尽可能的小些。

2024-07-17 15:18:44 159

原创 789.数的范围

【代码】789.数的范围。

2024-07-17 14:23:16 317

原创 【PTA】7-3 链表去重--C++

【代码】【PTA】7-3 链表去重--C++

2024-07-16 21:40:26 464

原创 归并排序--C++

归并排序是建立在归并操作上的一种有效,稳定的排序算法,该算法是采“分而自治”用的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。

2024-07-16 10:27:03 646

原创 【洛谷】P1059 [NOIP2006 普及组] 明明的随机数——C++

本题用到了头文件algorithm,我们可以先用sort函数进行排列,从大到小,sort(a,a+n,cmp)是对a数组从a[0]到a[n-1]进行排列.因为cmp是自定义排序函数,如果是将数组a从小到大排序,那么可以直接省略掉cmp;(sort只适用于数据不大的时候)还有unique函数,unique(a,a+n)是对a数组从a[0]到a[n-1]进行去重,要求a数组已经有序,返回去重后最后一个元素对于的指针。

2024-07-14 15:35:59 616

原创 【AcWing】792. 高精度减法--C++

1.要分清楚结果为正负数的情况,为负数我们可以将两数调换过来,后面再输出负号。2.对换算规律要明白。

2024-07-14 11:04:17 479

原创 【AcWing】AcWing 786. 第k个数 --C++

本题属于快速选择算法的补充。

2024-07-13 14:55:29 165

原创 【AcWing】785. 快速排序--C++

选择基准元素:从待排序的数组中选择一个基准元素,可以选择第一个,最后一个元素、随机元素、三数取中等。分区过程:将数组中的元素重新排列,使得小于基准元素的值位于基准元素的左侧,大于基准元素的值位于右侧。合并结果:最后,将左子数组、基准元素和右子数组合并起来,得到排序完成的数组。递归排序:对左右两个子数组分别进行递归排序,重复上述两个步骤。

2024-07-13 12:33:33 397

原创 【PTA】L1-003 个位数统计--C++

就是先假设0-9的数字都出现了0次,后面用先取于后除的方式,后面记得为0不输出。

2024-07-12 12:28:40 274

原创 【PTA】L1-001 Hello World--C++

本题是进入编程的第一道题,欢迎学习编程。

2024-07-12 12:21:23 267

原创 PTA 7-2 数组循环左移--C++

本题可以用数组或者指针来解决问题,本题我们如果我们用数组来解决问题的话,数组循环左移,就相当后面的数组右移过来,如i位置的就相当于i+m的位置的数组,大概这样的思路,就没有问题了。

2024-07-11 13:21:58 391

原创 【洛谷】P1563 [NOIP2016 提高组] 玩具谜题--C++

本题的麻烦点在余,如可分辩内外左右间的关系,因为内外情况下,左右是相反的,弄清楚这点本题就很简单了。

2024-07-11 09:47:26 428

原创 【洛谷】P1601 A+B Problem(高精)--C++

1.首先本题的计算量很大,用一般的方法没法得到结果,所以我们会用到数组,来储存位数。2.我们要注意先将字符串转化为数字,然后储存,并且是按个位到最高位的顺序储存起来。

2024-07-10 16:41:10 749

原创 【洛谷】P2670 [NOIP2015 普及组] 扫雷游戏--C++

本题是用坐标轴来进行的运算,以中间位置为(0,0),九个格可以分别从上往下(-1,1),(0,1),(1,1),(-1,0),(0,0),(1.0),(-1,-1),(0,-1),(1,-1),确定了中间位置,那么就可以对周围进行遍历,然后进行累加即可。

2024-07-10 12:50:54 546

原创 【洛谷】P1042 [NOIP2003 普及组] 乒乓球--C++

1.两种情况11分和21分制的注意,要避免在循环过程中要多次输入,列如像前面没有用用while储存起来,直接用for。2.要注意记分1号选手可以用+x,2号用1-x。3.一次结束后也要输出现在的结果。

2024-07-10 12:01:41 494

原创 【洛谷】P5728 【深基5.例5】旗鼓相当的对手——C++

以a,b,c,d为例,我们假设先a不动,依次比较d,c,b或者b,c,d,然后假设 b不动,依次比较c,d,最后假设c不动,比较d,这样这道题就差不多解决了。

2024-07-08 13:00:04 334

原创 【洛谷】P1047 [NOIP2005 普及组] 校门外的树——C++

1.首先确定树原先的为l+1,不信画坐标看看有几个点。2.能不能通过统计那些地点被用的地,做出标记。

2024-07-08 11:36:46 638

原创 【洛谷】P5727 【深基5.例3】冰雹猜想--C++

【代码】【洛谷】P5727 【深基5.例3】冰雹猜想--C++

2024-07-08 10:37:54 196

原创 【洛谷】P1427 小鱼的数字游戏--C++

1.本题是将数组反过来输出,不过要注意不要输出0,所以记得 -1。

2024-07-08 10:23:36 190

原创 【洛谷】 P1428 小鱼比可爱---C++

2.我们要清楚第一只鱼前面没有鱼,所以只会为1。3.用循环进行比较,将当前位置的鱼与前面比较。1.先确定输出的个数。

2024-07-08 10:10:58 255

空空如也

空空如也

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

TA关注的人

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