题解atcoder agc 004

题解 [ARC165A] Sum equals LCM

前天的晚上打这道题,和同学一起想出了思路,开心。 题意描述 给你一个数 \(N\),问你存不存在一个数列 \(A_1,A_2,\ldots,A_n(2 \le n)\) ,使得 \(\sum_{i=1}^n A_i=N\) 并且 \(\operatorname{lcm}(A_1,A_2,\ldots ......
题解 equals 165A ARC 165

AtCoder Regular Contest 165

啥都不会。自闭了。 A 显然填充 \(1\) 不会影响 \(\text{lcm}\)。 枚举 \(n\) 的互质且 \(\text{lcm} = n\) 的因数,看和是否 \(\le n\) 即可。 B 注意到答案的字典序肯定大于等于原排列。 如果存在 \(\ge k\) 的上升子段就直接输出原排列 ......
AtCoder Regular Contest 165

AtCoder Beginner Contest 320

A - Leyland Number a, b = map(int, input().split(' ')) print( a ** b + b ** a ) B - Longest Palindrome s = input() n = len(s) res = 0 for l in range(1 ......
Beginner AtCoder Contest 320

P3188 [HNOI2007] 梦幻岛宝珠-题解

20230918 P3188 [HNOI2007] 梦幻岛宝珠 Statement 01背包, \(n \le 100\),但是容量 \(m \le 2^{30}\)。 物体的体积可以写成 \(a \times 2^b(a \le 10,b \le 30)\) Solution 发现 \(W\) 太 ......
宝珠 题解 梦幻 P3188 3188

Azamon Web Services 题解

Azamon Web Services 看到目前题解都是 \(O(n^2)\) 的复杂度,来一发 \(O(nlogn)\) 的贪心题解。 思路很简单,先求经过至多一次的交换后,最小的字符串 \(S\)。再和 \(T\) 比较,如果小于就输出,否则无解。 问题转化成了两个子问题: 求经过至多一次的交换 ......
题解 Services Azamon Web

CF762C Two strings 题解

洛谷传送门 CF 传送门 题意 给你两个字符串 \(a\) 和 \(b\),你可以在 \(b\) 中删去尽量短的子段,使得 \(b\) 是 \(a\) 的子序列。求出最后的 \(b\)。 思路 真是奇了怪了,这种题洛谷题解里竟然没有双指针的做法? 首先考虑判断一个字符串 \(b\) 是否是另一个字符 ......
题解 strings 762C 762 Two

Alice and Hairdresser题解

Alice and Hairdresser 第一眼线段树,第二眼好像可以直接用数组模拟。 当一根头发长于 $l$,它再长多长其实都一样,所以不用开 long long。 如果一根新的头发长到比 $l$ 长,那可以分成以下几种情况: 如果它左侧和右侧只有一个元素大于 $l$ ,那答案不变。 如果左侧和 ......
题解 Hairdresser Alice and

罪人挽歌 题解

罪人挽歌 题解 简化题意: 给定 \(n\) 个二元组,第 \(i\) 个二元组的值为 \((a, b)\),保证任意两个二元组都不相同。 求是否存在一个二元组的排列,使得这些二元组满足对于任意 \(1 \leq i < n\),有 \(A_i = A_{i+1}\) 或 \(B_i = B_{i+ ......
题解 挽歌 罪人

「题解」BZOJ 3305 Catalan 数

\(f_{i,j}=f_{i-1,j-1}+f_{i-1,j+1}(j+1)\) 看成生成函数就有 \(F_n=xF_{i-1}+F_{i-1}'\),思路是凑微分,想凑出一个 \(G_i\) 是和 \(F_i\) 有关的,然后 \(G_i\) 有比较简单的形式。 这里就 \(G_n=F_n\tim ......
题解 Catalan BZOJ 3305

[题解]Pa?sWorD(2023ICPC网络预选赛第一场I题)

I Pa?sWorD 下次不要认为2e8可以莽过去了 思路 计数DP + 状压(其实也可以不压) + 前缀和优化(倒着写是差分) dp[i][j][k]表示第i位填j,状态为k的方案数 k这一维用于状态压缩,表示 数字、大写、小写 是否出现 前缀和优化:在处理?的时候,暴力会有62X62X8的单次复 ......
题解 预选赛 sWorD 网络 2023

题解 P6821 [PA2012] Tanie linie

本来想写 wqs 二分来着,然后推不出 dp 方程,摆烂了。 题目描述 给定含 \(n\) 个数的序列,求至多 \(k\) 个不相交子段的和的最大值。 具体思路 由于选 \(k\) 堆连续的数,因此一堆连续的符号相同的数,只有可能是同时被选或者同时不被选。 因此我们先对原序列预处理一遍,将相同符号的 ......
题解 P6821 Tanie linie 6821

Death DBMS题解(AC自动机)

题目传送门 CF1437G 好题 观察这道题,发现有关字串的题目,一般来说,这种题都要构建\(AC\)自动机,所以考虑构建。 构建之后,原来的所有 \(fail\) 是一个树形结构。 解法 \(1\): 考虑从询问入手,那么对于每一个询问,等价于就是查询每一个 \(Q_i\) 包含的后缀的最大值,再 ......
自动机 题解 Death DBMS

题解 LOJ2549【[JSOI2018] 战争】

problem 给你两个平面凸多边形 \(A,B\),\(Q\) 次询问,每次询问是一个向量 \(\vec v\),回答 \(A\) 与 \(B + \vec v\) 是否有交。\(n,Q \leq 10^5\)。 solution 观察闵可夫斯基和(Minkowsky sum)的定义,若将这个运算 ......
题解 战争 2549 2018 JSOI

[ARC119F] AtCoder Express 3

题目链接 观察样例 1 的解释,发现切换类型的方法是比较单一的 这种就是直接走一段换一段,我们可以人为钦定换乘时最多走一步,因为相邻的同色也可以视作走车站 这种情况复杂一些,需要往回走一段,但是依然可以发现往回走也至多一步,因为如果走了两步说明往回走了一步到达的车站依然同色,那么走的车站必然不会是后 ......
AtCoder Express 119F ARC 119

【杂题乱写】AtCoder-ARC113

AtCoder-ARC113A A*B*C 枚举 \(A,B\),那么 \(C\in [1,\left\lfloor\frac{K}{AB}\right\rfloor]\),时间复杂度是 \(O(K\log K)\)。 提交记录:Submission - AtCoder AtCoder-ARC113 ......
AtCoder-ARC AtCoder ARC 113

CF70D Professor's task 题解 & 动态凸包板子

CF70D Professor's task 题解 前言 此篇题解用的是 \(Andrew\),不想看这种做法的可以绕道。 题意 动态凸包板子题。 维护动态凸包。两种操作,加一个点或查询一个点是否在凸包内。 题解 首先你得会静态二维凸包。 维护二维凸包的方法挺多的,比如什么 \(Andrew\) 算 ......
凸包 题解 板子 Professor 动态

Atcoder abc の 初体験

[ABC320F] Fuel Round Trip 若只考虑单程的,设一个 \(dp_{i,j}\) 表示走到第 \(i\) 个加油站剩下的油为 \(j\) 的最小花费。 但是还需要考虑回来可能也要加油,所以综合考虑,设 \(dp_{i,j,k}\) 表示到第 \(i\) 个加油站去的途中有 \(j ......
Atcoder abc

[ABC320E] Somen Nagashi题解

2023-09-16 题目 题目传送门 翻译 翻译 难度&重要性(1~10):4 题目来源 AtCoder 题目算法 优先队列 解题思路 水题一道。 需要两个优先队列: 因为每一次是队首的人拿到面条,即队列中编号最小的拿面条,就用一个优先队列用来维护当前队列中的编号最小的人。 由于每一次拿了面条后再 ......
题解 Nagashi Somen 320E ABC

【题解】AtCoder-ABC320

AtCoder-ABC320A Leyland Number 依题意计算。 提交记录:Submission - AtCoder AtCoder-ABC320B Longest Palindrome 直接 \(O(n^2)\) 枚举,\(O(n)\) 判断。 提交记录:Submission - AtC ......
题解 AtCoder-ABC AtCoder ABC 320

[ABC320F] Fuel Round Trip 题解

题意 在坐标轴上给定 \(N\) 个点,坐标依次为 \(X_1, X_2, \cdots, X_N\),你需要从原点前往 \(X_N\) 并折返,其中在第 \(1\) 个到第 \(N - 1\) 个点上有加油站,其中第 \(i\) 个加油站可以花费 \(P_i\) 购买 \(F_i\) 升汽油,汽油 ......
题解 Round 320F Fuel Trip

AtCoder Beginner Contest 320

A - Leyland Number (abc320 A) 题目大意 给定\(a,b\),输出 \(a^b + b^a\)。 解题思路 因为数不超过\(10\),可以直接用 pow计算然后转成\(int\)。不会有精度损失。 神奇的代码 #include <bits/stdc++.h> using ......
Beginner AtCoder Contest 320

合并果子题解-C++ STL priority_queue容器的使用

说明:本博文关于priority_queue容器的说明来源于www.cnblogs.com/fusiwei/p/11823053.html 本人是刚刚接触算法竞赛的萌新,如果有大佬发现了错误,还望指出(真的有人会看本蒟蒻的博文吗) 这是我的第一篇博文,更多是作为测试 以后会将博客作为笔记记录学习的体 ......
题解 果子 priority_queue 容器 priority

atcoder313C

313C 题目概述:给定序列A,可以任选两个数,使其中一个数加1,另一个数减1.可以通过任意次操作,问需要至少多少次操作,才能使A中最大数和最小数差值不超过1。 解题思路:将该题进行抽象转化:1.我们需要将A序列转化为B序列,sumB=sumA。 操作次数为:\(\frac{\sum\limits_ ......
atcoder 313C 313

AtCoder Beginner Contest 126 D (图论、LCA性质、DFS、思维、*1200)

D - Even Relation 给你一棵树 (结点个数为 $ n(n \le 10^5) $, 现在需要将树上所有结点染成白色或黑色, 打印一种可行的方案(将 $ i $ 号点染成白色则输出 0, 否则, 输出 1), 满足:同一种颜色的点之间的距离是偶数。 思路: ......
Beginner 性质 思维 AtCoder Contest

CF1542E1 Abnormal Permutation Pairs (easy version) 题解

CF1542E1 Abnormal Permutation Pairs (easy version) 题解 不会 Hard version 对于第一个限制字典序,我们可以考虑枚举前 \(i\) 位相同,然后考虑后 \(n-i\) 位。我们只需要保证 \(p_{i+1} < q_{i+1}\) 即可。 ......
题解 Permutation Abnormal version 1542E

CF1852B Imbalanced Arrays 题解

CF1852B Imbalanced Arrays 题解 Links 洛谷 Codeforces Description 对于一个给定的长度为 \(n\) 的数组 \(A\),定义一个长度为 \(n\) 的数组 \(B\) 是不平衡的当且仅当以下全部条件满足: \(-n \leq B_{i} \le ......
题解 Imbalanced Arrays 1852B 1852

LeetCode-Java题解 209. Minimum Size Subarray Sum

题目地址:209. Minimum Size Subarray Sum 解题思路: 看到这道题,心里本身是有双指针这个概念的,但是不知道怎么用,脑子里第一反应就是暴力解法,双for一把梭,然后时间就超时了...看了题解才知道滑动窗口这个解法,不禁直呼妙啊!感觉和双指针非常类似,其核心点在于避免了暴力 ......

题解 UVA1566 John

题目描述 两个人轮流取石子,每人每次可以 \([1,a_i]\) 个石子,最后取完石子的人为负。问最终谁会赢。 具体思路 若堆数为 \(1\) 且该堆数量为 \(1\),先手必败。 若堆数不为 \(1\) 且每堆数量都为 \(1\),若有奇数堆,先手比败,否则,先手必胜。 若堆数不为 \(1\),转 ......
题解 1566 John UVA

洛谷题解 | P5660 数字游戏

​ 目录 题目描述 输入格式 输出格式 输入输出样例 说明/提示 题目简化 题目思路 AC代码 题目描述 小 K 同学向小 P 同学发送了一个长度为 8 的 01 字符串来玩数字游戏,小 P 同学想要知道字符串中究竟有多少个 1。 注意:01 字符串为每一个字符是 0 或者 1 的字符串,如“101 ......
题解 数字 P5660 5660

洛谷题解 | P1046 陶陶摘苹果

​ 目录 题目描述 输入格式 输出格式 输入输出样例 说明/提示 题目思路 AC代码 题目描述 陶陶家的院子里有一棵苹果树,每到秋天树上就会结出 10 个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个 30 厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。 现在已知 10 个 ......
陶陶 题解 苹果 P1046 1046