随笔分类 -  洛谷官方题单

摘要:原题链接:https://www.luogu.com.cn/problem/P1618 题意解读:枚举所有三位数的组合情况,判断是否符合比例。 解题思路: 方法一:枚举第一个数 根据题意,目的是寻找三个符合比例的三位数,可以直接枚举第一个,最小是123,最大是987 设第一个数为x,三个数的比例关系 阅读全文
posted @ 2024-01-31 10:23 hackerchef 阅读(283) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P2089 题意解读:枚举所有情况,记录符合美味程度要求的即可。 解题思路: 有两种枚举方法:循环枚举、DFS暴搜 很显然,循环枚举需要十重循环,代码过于丑陋,下面只介绍DFS的方法: 只需要一个大小为10的数组记录某一种调 阅读全文
posted @ 2024-01-30 17:41 hackerchef 阅读(112) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P2241 题意解读:要在整个n*m区域计算正方形和长方形的个数,枚举法即可。 解题思路: 此题枚举的对象是矩形的高i和宽j,高的范围[1, n],宽的范围[1, m],然后计算在n * m区域内有多少个i * j,i==j 阅读全文
posted @ 2024-01-30 16:50 hackerchef 阅读(202) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1012 题意解读:通过某种合理的排序方式,使得排序后的数字连在一起最大。 解题思路: 此题关键在于排序,对于两个数字,哪个数字应该排在前面呢? 1、思考误区 很容易想到,给定两个数abcd、xyz,先比较第一位a和x,谁 阅读全文
posted @ 2024-01-30 16:01 hackerchef 阅读(78) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1104 题意解读:将学生按照年龄由大到小排序,如果年龄相同,后输入的排在前面,输出排序后的学生姓名。 解题思路: 此题是一个排序常规题,年龄大排在前说明年、月、日越小越在前面,核心的排序思路如下: 1、如果年份不同,按年 阅读全文
posted @ 2024-01-30 14:48 hackerchef 阅读(176) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P5143 题意解读:给出一系列的点,按某种顺序经过所有点,计算距离。 解题思路: 如果小学生,可能对于三维坐标距离有些陌生,没关系,题目已经给出了计算公式,直接套公式即可,关键步骤如下: 1、读取所有坐标点 2、按高度值从 阅读全文
posted @ 2024-01-30 14:35 hackerchef 阅读(85) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1068 题意解读:根据题意,用模拟法,求出分数线所在位置,然后计算分数线,最后输出结果即可。 解题思路: 1、分数线是按从大到小排名来设定,因此数据因为按照分数从大到小排序,如果分数相同,需要安装报名号从小到大排序 2、 阅读全文
posted @ 2024-01-30 11:58 hackerchef 阅读(190) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1152 题意解读:要判断相邻数差的绝对值是否覆盖1~n-1,只需遍历相邻两数之差,借助数组标记差的绝对值是否存在,然后遍历数组即可。 解题思路: 此题有两个注意点: 1、数值要用long long 2、计算差值绝对值后, 阅读全文
posted @ 2024-01-30 11:12 hackerchef 阅读(135) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1116 题意解读:由于只能交换相邻的两节车厢,因此只能采用冒泡排序法,记录冒泡排序过程中交换的次数即可。 100分代码: #include <bits/stdc++.h> using namespace std; con 阅读全文
posted @ 2024-01-30 10:41 hackerchef 阅读(85) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P2676 题意解读:要使能够到书架顶的牛数量最少,优先选高的牛即可,直到总身高超过书架高度,简单的排序+贪心,下面给出代码。 100分代码: #include <bits/stdc++.h> using namespace 阅读全文
posted @ 2024-01-30 10:26 hackerchef 阅读(136) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1781 题意解读:题目思路非常简单,在n个投票数中选最大的,并记录其编号即可,由于投票数很大,无法直接用整形,需要通过string来进行数字比较。 解题思路: 本题的关键在于如何比较string数字的大小?在高精度减法时 阅读全文
posted @ 2024-01-30 09:56 hackerchef 阅读(120) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1093 题意解读:本题考察排序,根据题意,先按总分从大到小排,再按语文从大到小排,以上都相同则按学号从小到大排。 100分代码: #include <bits/stdc++.h> using namespace std; 阅读全文
posted @ 2024-01-29 10:05 hackerchef 阅读(84) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1059 题意解读:此题主要做两件事:排序+去重,用计数排序即可解决,直接给出代码。 100分代码: #include <bits/stdc++.h> using namespace std; const int N = 阅读全文
posted @ 2024-01-29 09:40 hackerchef 阅读(50) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1923 题意解读: 要最快的求第k小的数,O(n)的做法是利用快排的思想对数据进行划分 第一步、取分界点x,通常设x = a[(l + r) / 2] 第二步、将小于等于x的挪到x左边,将大于等于x的挪到x右边 第三步、 阅读全文
posted @ 2024-01-27 22:30 hackerchef 阅读(181) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1177 题意解读:数据量为100000,必须用小于等于N*logN复杂度的排序算法,可以直接用sort,更重要需要掌握快速排序的过程。 知识点:快速排序 设定数组q[n],l,r 第一步:确定分界点x 可以取q[l]、q 阅读全文
posted @ 2024-01-26 23:22 hackerchef 阅读(225) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1271 题意解读: 最直接的计数排序问题,借助一个桶h[N],对被投票的候选人x执行h[x]++,再按顺序遍历输出即可。 100分代码: #include <bits/stdc++.h> using namespace 阅读全文
posted @ 2024-01-26 12:36 hackerchef 阅读(95) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1045 题意解读: 要计算2p- 1的位数和最后500位,实际上只需要计算2p,两者位数一致,前者比后者个位减1即可,且个位肯定不会是0,比较容易处理。 解题思路: 一、朴素做法 如果直接采用高精度乘法计算2p,p最大3 阅读全文
posted @ 2024-01-25 18:18 hackerchef 阅读(123) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1249 题意解读: 题目分两步,第一步是将整数拆分成不同自然数的和,第二步通过高精度计算这些因数的乘积,要使乘积最大,需要某种贪心思想。 解题思路: 如何保证整数拆分后因子的乘积最大呢,有几个原则: 1、最好不要包括因子 阅读全文
posted @ 2024-01-24 17:54 hackerchef 阅读(364) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1591 题意解读:此题核心就是通过高精度*低精度计算阶乘,然后统计数码个数即可,直接给出代码。 100分代码: #include <bits/stdc++.h> using namespace std; vector<i 阅读全文
posted @ 2024-01-24 15:47 hackerchef 阅读(107) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1786 题意解读: 此题比较简单,模拟+排序即可解决。需要注意的是,当帮贡或者等级相同时,都要保持原来的顺序,因此需要记录每个人的编号,便于排序。 话不多说,直接上代码。 100分代码: #include <bits/s 阅读全文
posted @ 2024-01-24 14:54 hackerchef 阅读(73) 评论(0) 推荐(1)