
洛谷普及组
洛谷普及组题解
Bertil
生活不止眼前的代码,还有代码里的bug!
欢迎大家关注我,一起学习,一起进步!
展开
-
P1216 [USACO1.5][IOI1994]数字三角形 Number Triangles(洛谷)
原题传送门思路:动态规划求最优解题,此题采用逆向解法比较容易。先定义一个变量和一个数组分别存放行数以及输入的各行的数,然后从数组的倒数第二行开始从下往上的每一行中的每个元素分别去选择一个最优解(从左下方和右下方中选择较大的一个),然后累加到当前元素中,以此类推,最后输出最顶端的元素即可代码参考在这里插入代码片...原创 2020-06-17 21:28:35 · 395 阅读 · 0 评论 -
P1075 质因数分解(洛谷)
原题传送门思路:水题,题目粗略看似复杂,实则求较大的因子而已代码参考在这里插入代码片原创 2020-06-17 21:26:34 · 505 阅读 · 0 评论 -
P1024 一元三次方程求解(洛谷)
原题传送门思路:水题,根据题目的提示来敲即可代码参考在这里插入代码片原创 2020-06-17 21:24:30 · 472 阅读 · 0 评论 -
P1028 数的计算(洛谷)
原题传送门思路:列举出前几个例子m[1]=1, m[2]=2, m[3]=2, m[4]=4就不难看出m[n]=m[1]+…+m[n/2]+1这样的规律来,因此用递推的思路来做即可代码参考在这里插入代码片原创 2020-06-17 21:00:39 · 443 阅读 · 0 评论 -
P1088 火星人(洛谷)
原题传送门思路:水题,运用STL中的next_permutation()方法即可解决全排列问题代码参考在这里插入代码片原创 2020-06-17 20:58:49 · 470 阅读 · 0 评论 -
P1706 全排列问题(洛谷)
原题传送门思路:水题,先给数组赋值从1开始的自然数序列的前n项,再计算出数组的全排列个数m,最后对数组进行m次循环的输出和下一次全排列(运用了STL中的next_permutation(a,a+n)方法)即可代码参考在这里插入代码片...原创 2020-06-17 20:56:16 · 1063 阅读 · 0 评论 -
P1781 宇宙总统(洛谷)
原题传送门思路:先定义一个字符串和号数整型变量,然后遍历n个字符串分别与它比较,先判断两个字符串长度的大小,长度相同时再比较ASCII的大小,符合条件的则赋值给前面定义的两个成员,最后输出即可代码参考在这里插入代码片...原创 2020-06-17 20:50:59 · 520 阅读 · 0 评论 -
P1908 逆序对(洛谷)
原题传送门思路:这题实在坑,直接暴力法要超时,加个归并排序模板又要注意逆序对的数量如何求出,因为两段都是有序的了,所以前面一段中找到一个比后面中的某个大的时候,前面一段后面所有的数都要比它大了,统计个数就为m-i+1,这是这道题的关键点,然后算法的话就是分治+归并排序,有涉及递归的过程。代码参考在这里插入代码片...原创 2020-06-17 20:48:27 · 512 阅读 · 0 评论 -
P1177 【模板】快速排序(洛谷)
原题传送门思路:快排模板题代码参考在这里插入代码片原创 2020-06-17 19:57:48 · 411 阅读 · 0 评论 -
P1116 车厢重组(洛谷)
原题传送门思路:水题,用冒泡排序加个记录交换次数即可代码参考在这里插入代码片原创 2020-06-17 19:53:45 · 419 阅读 · 0 评论 -
P1093 奖学金(洛谷)
原题传送门思路:先定义学号语文数学英语总分五个数组,再对数组进行赋值,然后用冒泡排序和if条件分三种情况进行swap,最后打印出前五名的学号和总分即可。注意点:学号从1开始不是0!代码参考在这里插入代码片...原创 2020-06-17 19:50:36 · 611 阅读 · 0 评论 -
P1059 明明的随机数(洛谷)
原题传送门思路:水题,用set容器中的函数即可在这里插入代码片原创 2020-06-17 19:47:37 · 327 阅读 · 0 评论 -
P1996 约瑟夫问题(洛谷)
原题传送门思路:先定义一个整型数组来表示n个人,然后不断的遍历数组,没被踢出去的计数累加1,被踢出去的赋值为-1后计数重新开始,且踢出去的人自增1,遍历完数组一次后重新开始遍历,直到踢出去的人等于总人数才结束。这道题是关于数据结构中的链表,我在这里是直接模拟整个过程,但也可以用链表来做。代码参考在这里插入代码片...原创 2020-06-16 20:59:16 · 551 阅读 · 0 评论 -
P2240 【深基12.例1】部分背包问题(洛谷)
原题传送门思路:先定义三个数组存储每一堆金币的价值,重量,性价比,然后用冒泡排序按性价比从大到小排序,最后将性价比大的先与背包的重量比较(此处就是贪心的思想,局部优解到全局优解),再分两种情况讨论,最后输出带走金币的价值即可代码参考在这里插入代码片...原创 2020-06-16 20:53:21 · 665 阅读 · 1 评论 -
P1803 凌乱的yyy / 线段覆盖(洛谷)
原题传送门思路:区间贪心题,先定义一个构造体来存储开始和结束的时间,然后定义一个函数来将结束时间由小到大排序,接着就遍历排序后的每一个结束时间,越早结束的且满足条件的就参加,最后输出次数即可代码参考在这里插入代码片...原创 2020-06-16 20:49:19 · 392 阅读 · 0 评论 -
P1044 栈(洛谷)
原题传送门思路:先定义数组和变量,然后令f[0]=1,f[1]=1,默认f[0]=1纯粹是为了满足表达式计算,无实际意义;然后用卡特兰数递推式方可求出从2开始到n的各个f值,最后输出f[n]即可.卡特兰数原理:令h(0)=1,h(1)=1,catalan数满足递推式:h(n)= h(0)*h(n-1)+h(1)*h(n-2) + … + h(n-1)h(0) (n>=2)代码参考在这里插入代码片...原创 2020-06-16 20:46:24 · 837 阅读 · 0 评论 -
P1226 【模板】快速幂||取余运算(洛谷)
原题传送门思路:这题有两种做法:递归和迭代。我这里用的是迭代求法,先定义长整型变量并赋值,接下来判断指数的二进制末尾是否为1,若1则为奇数,累积上a,然后令底数b求平方,再将指数p的二进制向右移1位,一直重复这个过程直到p<=0结束代码参考在这里插入代码片...原创 2020-06-16 20:38:45 · 480 阅读 · 0 评论 -
P2249 【深基13.例1】查找(洛谷)
原题传送门思路:运用STL中的lower_bound( )方法即可找出第一个大于或等于被查数的值,再用if排除找出的大于被查数的数,最后输出相应的下标即可代码参考在这里插入代码片原创 2020-06-16 20:25:42 · 769 阅读 · 0 评论 -
P1981 表达式求值(洛谷)
原题传送门思路:先定义一个int型的栈和一个char型的栈分别来存放操作数和运算符,然后将输入的数据转换后存入int型栈中,将运算符存入char型栈中,若是空栈则可直接push,非空的话要考虑运算符的优先级,(‘*’的ASCII码为74,‘+’的ASCII码为75,且乘号的优先级更大一点,所以若是加号先进栈则乘号可以进栈,反之不行),接着就是将int型栈中的操作数抛出最后进去的两个然后进行运算,再将运算符号和运算结果push到栈里,以此循环来遍历输入的字符串;往下就是对非空栈进行pop,运算和push原创 2020-06-16 20:02:42 · 879 阅读 · 0 评论 -
P1449 后缀表达式(洛谷)
原题传送门思路:定义一个来存放int型的栈,然后将输入的数据转换后存入栈中,但是以运算符号为分割,先进第一个数,再进第二个数,接着将后进的数先抛出,此时先进的数就是栈顶元素了,然后将这两个数做运算后再将第一个数抛出以及将运算结果sum压入栈中,以此循环即可。代码参考在这里插入代码片...原创 2020-06-16 19:58:14 · 557 阅读 · 0 评论 -
P1064 金明的预算方案(洛谷)
原题传送门思路:因为每个主件最多只有两个附件,所以枚举每个主件如果满足条件的话可以分为五种情况购买:什么都不买;只买主件;买主件和第一个附件;买主件和第二个附件;买主件和两个附件。然后分别计算出每种情况的物品价格与重要度乘积之和,最后取最大值即可.代码参考在这里插入代码片...原创 2020-06-15 16:22:54 · 424 阅读 · 0 评论 -
P1757 通天之分组背包(洛谷)
原题传送门思路:分组背包问题,比01背包和完全背包复杂一点,但是套路都差不多,只是分组背包问题的遍历得从枚举每一组开始,再枚举剩余容量,接着枚举各组里物品的序号,然后满足条件就套用状态转移方程,最后输出即可.代码参考在这里插入代码片...原创 2020-06-15 16:11:46 · 397 阅读 · 0 评论 -
P1616 疯狂的采药(洛谷)
题目描述LiYuxiang 是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同种类的草药,采每一种都需要一些时间,每一种也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”如果你是 LiYuxiang,你能完成这个任务吗?此题和原题的不同点:每种草药可以无限制地疯狂采摘原创 2020-06-15 12:17:12 · 804 阅读 · 0 评论 -
P1048 采药(洛谷)
题目描述辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”如果你是辰辰,你能完成这个任务吗?输入输出格式输入格式第一行有 2个整数T(1≤T≤1000)和M(1≤M≤100),用原创 2020-06-15 11:52:35 · 748 阅读 · 0 评论