随笔分类 - 算法竞赛
摘要:A - Christmas Present 题目大意 给定两个正整数 \(B,G\)(\(1\le B,G\le 1000\) 且 \(B\ne G\)),判断哪个更大。 分析 模拟即可。 代码 #include <cstdio> using namespace std; int main() {
阅读全文
摘要:题目传送门 洛谷博客 CSDN CSP-S 2023 T3 结构体 题解 基本思路 本题主要考查编码能力,所以直接给出基本思路: 由于可以递归式的创建元素,最多可以同时存在 \(100^{100}\) 个不同的基础类型的元素。即使算上最大地址的限制,元素的数量也能达到 \(10^{18}\)。显然,
阅读全文
摘要:G - Typical Path Problem 题目大意 给定一张 \(N\) 个点、\(M\) 条边的简单无向图 \(G\) 和三个整数 \(A,B,C\)。 是否存在一条从顶点 \(A\) 到 \(C\),且经过 \(B\) 的简单路径? 数据范围: \(3\le N\le 2\times 1
阅读全文
摘要:好久没写题解了,这就来水一篇。 A - Job Interview 题目大意 给定一个长为 \(N\) 的字符串 \(S\),由 o、-、x 组成。 判断 \(S\) 是否符合下列条件: \(S\) 中至少有一个 o。 \(S\) 中没有 x。 \(1\le N\le 100\) 分析 签到题。直接
阅读全文
摘要:0. 前言 最近公共祖先简称 LCA(Lowest Common Ancestor)。两个节点的最近公共祖先,就是这两个点的公共祖先里面,离根最远的那个。 这种算法应用很广泛,可以很容易解决树上最短路等问题。 为了方便,我们记某点集 \(S=\{v_1,v_2,\ldots,v_n\}\) 的最近公
阅读全文
摘要:0. 前言 好久没更算法笔记专栏了,正好学了新算法来更新…… 这也是本专栏的第一个专题问题,涉及到三种数据结构,如果写得有问题请各位大佬多多指教,谢谢! 1. 关于 RMQ 问题 RMQ 的全称是 Range Minimum/Maximum Query,即区间最大/最小值问题。 本文中,我们的算法以
阅读全文
摘要:吐槽:这比赛名字为啥没有英文版。。。 A - Batting Average 题目大意 给定整数\(A,B\),输出\(\frac BA\),保留三位小数。 \(1\le A\le 10\) \(0\le B\le A\) 分析 签到题,使用printf或cout格式化输出即可。 代码 #inclu
阅读全文
摘要:0. 前言 突然想到位运算是个好东西,就来水一波文章了…… 注意:我把能想到的有关位运算的所有内容都放进来了,所以篇幅较长,请谅解!若有写的不清楚或者不够详细的地方欢迎在评论区补充,谢谢支持! 本文中参考代码均使用C++编写。 废话不多说,下面步入正题。 1. 基本运算 有一定基础的可以跳过该部分。
阅读全文
摘要:前言 树状数组,即树形存储的数组,又称Binary Indexed Tree或Fenwick Tree。 抛开它树形的存储结构,这种神奇的数据结构的应用看起来与「 树」没什么关系: 有一个序列\(A=(A_1,A_2,\dots,A_N)\),在不超过\(\mathcal O(\log N)\)的时
阅读全文
摘要:前言 背包(Knapsack)问题是经典的动态规划问题,也很有实际价值。 01背包 洛谷 P2871 [USACO07DEC] Charm Bracelet S AtCoder Educational DP Contest D - Knapsack 1 有\(n\)个物品和一个总容量为\(W\)的背
阅读全文
摘要:前言 生活中经常遇到类似这种的问题: 公路修建 有一些城市,城市之间要修建高速公路,每两个城市之间都可以修双向的路。其中每两个城市之间修路都需要花费对应的金额。请问如何修路,使得总花费的金额最少,且任意两个城市之间都可以直接或间接通过修建的路来通行? 实际上,我们可以把这种问题抽象化,把城市看作图的
阅读全文
摘要:0. 前言 Dijkstra算法可在\(\mathcal O(m\log m)\)或\(\mathcal O(m\log n)\)的时间内求解无负权单源最短路问题。本文中,我们将详细介绍算法的原理、实现,以及常用的两种优化。 另外,Dijkstra算法也不要乱用,比如说多源的最短路,用Dijkstr
阅读全文
摘要:0. 前言 在图中,如果要求任意两点间的距离,则可以使用Floyd(\(\mathcal O(N^3)\)😉)和Dijkstra(\(\mathcal O(NM\log M)\)😃)。对于比较小的数据范围(一般为顶点数\(N\le 150\)),可以使用Floyd算法。本文将讲述Floyd算法的
阅读全文
摘要:0. 定义 树形DP,又称树状DP,即在树上进行的DP,是DP(动态规划)算法中较为复杂的一种。 1. 基础 令\(f[u]=~\)与树上顶点\(u\)有关的某些数据,并按照拓扑序(从叶子节点向上到根节点的顺序)进行\(\text{DP}\),确保在更新一个顶点时其子节点的dp值已经被更新好,以更新
阅读全文
摘要:A - Full House 题目大意 来自一个掼蛋爱好者的翻译qwq 给定一副扑克牌中五张牌的编号\(A,B,C,D,E\),判断这五张是否为一组“三带二”。(不懂的自行百度 数据范围:\(1\le A,B,C,D,E\le 13\),且\(A,B,C,D,E\)不会全部相同。 输入格式 \(A~
阅读全文
摘要:A - A Unique Letter 题目大意 给定一个长度为\(3\)的字符串\(S\)。 输出\(S\)中出现正好一次的字母(任意,如abc中,三个字母都可为答案)。 如果没有,输出-1。 数据保证\(S\)的长为\(3\),且由小写英文字母组成。 输入格式 \(S\) 输出格式 输出任意符合
阅读全文
摘要:D - Trophy 题目大意 有一个游戏,由\(N\)个关卡组成。第\(i\)个关卡由一个数对\((A_i,B_i)\)组成。 要通过一个关卡,你必须先花\(A_i\)的时间看一次介绍。然后,用\(B_i\)的时间打通这个关卡。若想多次通过同一个关卡,则第一次需要看介绍,后面无需再看(即如果想打通
阅读全文
摘要:A - Last Two Digits 题目大意 给定正整数\(N\),求\(N\)的后两位。 \(100\le N\le 999\) 输入格式 \(N\) 输出格式 输出\(N\)的后两位,注意输出可能有前导0。 样例 \(N\) 输出 \(254\) 54 \(101\) 01 分析 题目已经规
阅读全文
摘要:A - Median? 题目大意 给定正整数\(a,b,c\),判断\(b\)是否为三个数中的中位数(即从小到大排序后是第二个,不是平均数)。 \(1\le a,b,c\le 100\) 输入格式 \(a~b~c\) 输出格式 如果\(b\)是三个数中的中位数,输出Yes;否则,输出No。 样例 \
阅读全文
摘要:前言 这是我第一次写7题(A~G)的ABC题解,若有写得不好或者不到位的地方请多多指教,我将万分感激,感谢大家的支持! A - ASCII code 题目大意 给定正整数\(N\),输出ASCII码是\(N\)的字母。 \(97\le N\le 122\) 输入格式 \(N\) 输出格式 输出ASC
阅读全文

浙公网安备 33010602011771号