摘要: 题目链接:https://www.luogu.com.cn/problem/P1309 如果是新手可能马上会想到sort排序,每比一次就排一次,但是这样的时间复杂度有点高,只有60分; 这是因为每次比完赛会产生两个有序数列(输/赢),只需要把这两个有序数列合并成一个有序数列,而sort则是排了所有的 阅读全文
posted @ 2022-10-23 16:44 uf0_金币灰黄^w.h 阅读(174) 评论(0) 推荐(0)
摘要: 题目链接:https://www.luogu.com.cn/problem/P5016 一道纯模拟题,思路就是先算出每个阵营的战力,然后比较,枚举每个点,求出在哪个点摆放兵能使战力差距最小; 但是有几个点要注意: 1.数据加起来会爆int,所以需用long long; 2.会出现无论把兵力加在哪一方 阅读全文
posted @ 2022-10-22 17:54 uf0_金币灰黄^w.h 阅读(63) 评论(0) 推荐(0)
摘要: 题目传送门:https://www.luogu.com.cn/problem/P1835 数据范围最大有20亿,用普通质数筛10000%超时(就是不超时数组也开不了那么大) 由于r-l不超过10^6,所以我们可以先筛出较小的质数,然后用这些质数去筛那个区间里的质数 另外由于数组开不了20亿,但可以开 阅读全文
posted @ 2022-08-10 09:46 uf0_金币灰黄^w.h 阅读(77) 评论(0) 推荐(0)
摘要: 链接:https://www.luogu.com.cn/problem/P2926 暴力会超时,只有47分。 于是我们要用类似于质数筛的算法去求。 将数据存到桶里,然后如果桶里有数就枚举它的倍数,如果它的倍数也在桶里,用另一个数组将它加上。 上代码: 1 #include<bits/stdc++.h 阅读全文
posted @ 2022-08-05 09:25 uf0_金币灰黄^w.h 阅读(21) 评论(0) 推荐(0)
摘要: 题目链接:https://www.luogu.com.cn/problem/P2651 题目描述:给出一个形如a1​/a2​/a3​/.../an的表达式,求问是否可以通过添加一些括号改变运算顺序使其的结果成为一个整数。 不管怎么添加括号,a1肯定在分子上,通过变换可得a2肯定在分母上。 要使式子的 阅读全文
posted @ 2022-08-04 11:46 uf0_金币灰黄^w.h 阅读(46) 评论(0) 推荐(1)
摘要: 题目链接:https://www.luogu.com.cn/problem/P1017 题目描述:读入一个十进制数和一个负进制数的基数, 并将此十进制数转换为此负进制下的数 可能有人和我一样在做这道题时遇到了麻烦,因为对负进制很陌生。 就拿题目中给的例子来说 -15=1×(−2)^5+1×(−2)^ 阅读全文
posted @ 2022-07-27 09:25 uf0_金币灰黄^w.h 阅读(55) 评论(0) 推荐(0)
摘要: 题目链接:https://www.luogu.com.cn/problem/P1226 给你三个整数 a,b,p,求 a^b mod p 的值。 这道题就是快速幂的模板题。 那么,什么是快速幂呢? 普通的幂运算就是让 b 个 a 相乘,但这样的时间复杂度较高,有 O(n) 接下来就要介绍一种时间复杂 阅读全文
posted @ 2022-07-23 11:30 uf0_金币灰黄^w.h 阅读(177) 评论(1) 推荐(0)
摘要: 先来看一道模板题: https://www.luogu.com.cn/problem/P3372 题目描述: 已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上 k。 2.求出某区间每一个数的和。 一看是区间查询和区间更新的题,就很容易想到线段树——线段树就是用来解决区间类型的题的。 阅读全文
posted @ 2022-07-22 09:09 uf0_金币灰黄^w.h 阅读(196) 评论(0) 推荐(0)
摘要: 题目链接:https://www.luogu.com.cn/problem/P3374 题目描述: 已知一个数列,你需要进行下面两种操作: 1.将某一个数加上 x 2.求出某区间每一个数的和 看到这道题,首先想到的是直接数组模拟。 不用多说了吧?是人都会。 但是数组模拟求区间和的单次时间复杂度是O( 阅读全文
posted @ 2022-07-12 11:14 uf0_金币灰黄^w.h 阅读(51) 评论(0) 推荐(1)
摘要: 题目链接:https://www.luogu.com.cn/problem/P4779 题目描述:给定一个 n 个点,m 条有向边的带非负权图,计算从 s 出发,到每个点的距离。 这道题就是一个单源最短路径的模板,有两种做法: 1.Floyd算法 暴力枚举出所有起点、终点以及中间值,然后算出每两个点 阅读全文
posted @ 2022-07-09 11:01 uf0_金币灰黄^w.h 阅读(388) 评论(0) 推荐(0)