travel 143e abc car

ABC330 E Mex and Update 题解

Link ABC330 E Mex and Update Question 给一个数组 \(a\),有 \(Q\) 次修改 每次把 \(a_i\) 改成 \(x\) 问每次修改后,不在 \(a\) 数组中的最小非负数时多少 Solution 记录每个 \(a_i\) 出现的次数 \(num\) 每个 ......
题解 Update ABC 330 Mex

[ABC321E] Complete Binary Tree

思路:第一次先把往后距离为 $k$ 的点算出来,然后再每次往前走一个,考虑 $k-i$ 的情况。(具体见代码注释)。 代码: ```cpp#include <bits/stdc++.h>using namespace std;// headint sum[100],head=0;int n,x,k; ......
Complete Binary 321E Tree ABC

[ABC315Ex] Typical Convolution Problem

题目链接 首先观察到这个形式,容易发现它和常规的卷积不同点就在于:题目给出的求和定义中,\(\sum\) 符号下面的式子是 \(i+j<N\) 求和而不是 \(i+j=N\)。 为了方便计算,我们引入: \[G_n=\sum_{i+j<N}F_iF_j \]我们发现,假设所有 \(F_{1\sim{ ......
Convolution Typical Problem ABC 315

ABC330 A-E 题解

ABC330题解 AtCoder Beginner Contest 330 A - Counting Passes 思路: 枚举一遍,当前数大于\(L\)使\(ans+1\)即可. 代码: #include<iostream> #define int long long using namespac ......
题解 ABC 330 A-E

[ABC327G] Many Good Tuple Problems

题目链接 简化题意:有一个 \(n\) 个点的图,问有多少个长度为 \(M\) 的边序列,满足连边后图是二分图。 \(n\le 30,m\le 10^9\) 考虑先强制要求无重边。 定义 \(f_{i,j}\) 为 \(i\) 个点,\(j\) 条边的图的二分图染色数量(染色方式不同算多次)。这个是 ......
Problems Tuple 327G Many Good

ABC327 E Maximize Rating 题解

Link ABC327 E Maximize Rating Question 给出 \(N\) 个数 \(Q_i\),从中按照顺序选出 \(k\) 个数,使得 \[R=\frac{\sum^k_{i=1}(0.9)^{k-i}\times Q_i}{\sum^k_{i=1}(0.9)^{k-i}}- ......
题解 Maximize Rating ABC 327

ABC325 D Printing Machine 题解

Link ABC325 D Printing Machine Question 有 \(N\) 个零件需要打印,每个零件从 \(T_i\) 时间进入机器,从 \(T_i+D_i\) 时间离开机器,每个时间段只能答应一个零件,求最多能打印多少零件 Solution 贪心的去想,对于第 \(i\) 个时 ......
题解 Printing Machine ABC 325

ABC330

D 记录每一行,每一列有多少个 o,然后统计答案即可。 #include<bits/stdc++.h> #define int long long using namespace std; int n; string str[2005]; int r[2005][2005],l[2005][2005 ......
ABC 330

AT_abc329_e [ABC329E] Stamp 题解

题目翻译 给你两个字符串:\(S\) 由大写英文字母组成,长度为 \(N\);\(T\) 也由大写英文字母组成,长度为 \(M\),小于 \(N\)。有一个长度为 \(N\) 的字符串 \(X\),它只由 # 字符组成。请判断是否有可能通过执行以下任意次数的操作使 \(X\) 与 \(S\) 匹配: ......
题解 329 AT_abc Stamp 329E

[ABC328C] Consecutive 题解

给一个长度为 \(n\) 的字符串 \(s\),\(q\) 次询问,每一次 \(l\) 和 \(r\) 区间内有多少个 \(s_i\) 等于 \(s_{i-1}\)。 \(10^5\) 的数据 \(O(N^2)\) 暴力肯定行不通。于是我们考虑预处理前缀和,处理到 \(i\) 下标以及之前有多少个 ......
题解 Consecutive 328C ABC 328

[ABC329C] Count xxx 题解

插曲 因为本人看错了题面,买看到一个子串只包含一种字母,所以切完 D 和 E 才回来发现很简单。 问题翻译 给你一个长度为 \(N\) 的字符串 \(S\),由小写英文字母组成。 求 \(S\) 的非空子串中有多少个是一个字符的重复。在这里,作为字符串的两个子串是相等的,即使它们是以不同的方式得到的 ......
题解 Count 329C ABC 329

[ABC329D] Election Quick Report 题解

题目翻译 有一场选举,要从 \(N\) 名候选人中选出一名获胜者,候选人编号为 \(1, 2, \ldots, N\),共有 \(M\) 张选票。 每张选票正好投给一位候选人,其中 \(i\) 票投给了候选人 \(A_i\)。 选票将按照从第一张到最后一张的顺序进行统计,每张选票统计完毕后,将更新并 ......
题解 Election Report Quick 329D

[ABC328D] Take ABC 题解

题目大意: 给你一个字符串 \(s\)。你要在其中找到多少个 ABC 的子串,例如 AABCBC 算两个,删掉中间的 ABC 后,前面的和后面的加起来也是一个 ABC,所以就算两个。 思路分析: 首先很容易写出暴力,把一个 ABC 提取出来后把后面的元素往前移,然后再重复操作,但是我们发现时间复杂度 ......
题解 ABC 328D Take 328

AT_abc324_e [ABC324E] Joint Two Strings 题解

题目大意 给你 \(n\) 个字符串 \(s\),和一个字符串 \(t\)。 问你,有多少组是 \(s_j\) 拼在 \(s_i\) 后面所组成的新字符串中,\(t\) 是其子序列。 思路 分析:\(5 \times 10^5\) 的数据肯定需要 \(O(n)\) 或 \(O(n \log n)\) ......
题解 324 Strings AT_abc Joint

[ABC327D] Good Tuple Problem 题解

分析: 这一道题很容易发现可以用并查集来维护 (不知道为什么其他人都用了图论),\(a_i\) 与其对应的 \(b_i\) 代表着 \(a_i\) 这个集合里不能存在着 \(b_i\)。 根据只有存在两个集合,所以我们会发现,若 \(x\) 与 \(y\) 不在一个集合且 \(x\) 与 \(z\) ......
题解 Problem Tuple 327D Good

[ABC321G] Electric Circuit 状压DP

用到了好多技巧的状压DP 我们先统计总数然后除以m的阶乘就可以了 设f[i]表示状态为i的集合造成的贡献数(也就是状态为i的集合 不与集合外的点联通 且 这个集合联通块数是1 的情况数) 不与集合外的点联通的话只用考虑结合i之间连边,集合外那些点之间两边就可以啦 这个集合联通块数是1 就比较难处理了 ......
Electric Circuit 321G ABC 321

CF685E Travelling Through the Snow Queen's Kingdom

题意 给定一张图,走出当前边的时间为 \(i\)。 \(q\) 次询问,问 \(s\) 是否能在 \(l \to r\) 中走到 \(t\)。 Sol 考虑将边从大到小插入图中。 注意到当前边只能对起点造成贡献。 复杂度 \(O(n \times \max\{n, m\})\) Code #incl ......
Travelling Through Kingdom Queen 685E

abc290g O(TD)算法

前言 似乎洛谷上的题解和AT官方都给的 \(O(TD^2)\) 算法? 这里给出乱搞搞出的一种 \(O(TD)\) 算法。 题解 首先发现 \(D\) 虽然没给出固定上界,但显然不超过 \(log_2 10^{18}=60\)。 再接下来可以发现删边等价于先选一颗子树,再删掉这颗子树内部的子树。 先 ......
算法 290g abc 290 TD

[ABC328D] Take ABC 题解

链接 如果只是扫一遍肯定是不行的,所以我们使用一个栈,遇到 C 就判断栈顶的两个元素是不是分别为 B 和 A。这样就能做出来这道题了。 代码 #include<bits/stdc++.h> using namespace std; string s; char stk[200010]; int ma ......
题解 ABC 328D Take 328

AtCoder Beginner Contest(abc) 326

B - 326-like Numbers 难度: ⭐ 题目大意 如果一个三位数的百位和十位的乘积等于个位, 那么这个数就是合法的; 问大于等于n的最小的合法的数是多少; 解题思路 因为数据范围很小, 所以可以直接暴力; 神秘代码 #include<bits/stdc++.h> #define int ......
Beginner AtCoder Contest 326 abc

AtCoder Beginner Contest 329 (ABC329)

A. Spread 不说了,代码。 B. Next 不说了,代码。 C. Count xxx Description 给定一个长度为 \(N\) 的字符串 \(S\),求 \(S\) 中非空连续,并且包含重复字符的连续子串长度。 例如 $S = $ aaabaa,则它满足上述条件子串为 a,aa,a ......
329 Beginner AtCoder Contest ABC

[ABC329E]Stamp

为了方便,我们记 \(T\) 为印章。 不可能出现上图的情况(或者说无效),区间都必须是左右端点严格递增的。 发现新增一个区间,无非就是放在上面/下面两种情况。 考虑用 \(f[i][j]\) 表示前 \(i\) 个字母全部匹配,且第 \(i\) 个字母恰好在最右侧的模式串的第 \(j\) 个位置是 ......
Stamp 329E ABC 329

[ABC328C] Consecutive 题解

Hello World 链接 这道题是一个很明显的前缀和,我们把 $sum_i$ 表示为前 $i$ 个字符有多少个有重复,查询的时候就用 $sum_{r-1}-sum_{l-1}$ 就行了。 代码 #include<bits/stdc++.h> using namespace std; string ......
题解 Consecutive 328C ABC 328

[ABC326C] Peak 题解

题目链接 题目思路 这个问题要求找到一个半开区间,使得在这个区间内包含尽可能多的礼物。首先,我们需要将输入的礼物坐标按照从小到大的顺序进行排序。然后,我们可以使用双指针的方法来寻找最佳的区间。 代码 以下是代码解释: #include<bits/stdc++.h> using namespace s ......
题解 326C Peak ABC 326

AtCoder Beginner Contest(abc) 329

B - Next 难度: ⭐ 题目大意 给定n个数, 输出其去重后的次大值; 解题思路 暴力就行; 神秘代码 #include<bits/stdc++.h> #define int long long #define IOS ios::sync_with_stdio(false), cin.tie( ......
Beginner AtCoder Contest 329 abc

[ABC326D] ABC Puzzle 题解

题目链接 解法分析 这个问题是一个经典的排列谜题,通过回溯算法来穷举所有可能的字符排列,然后验证是否满足行和列约束。这个解决方案可以用于解决类似的谜题,其中需要满足一定的排列条件。通过仔细考虑约束条件,可以加快解决问题的速度,减少不必要的计算。 更详细的我写在代码里了。 代码 #include <b ......
题解 ABC Puzzle 326D 326

AtCoder Beginner Contest(abc) 296

B - Chessboard 难度: ⭐ 题目大意 给定一个8*8的字符矩阵, 其中只有一个' * ', 输出它的坐标; 其坐标的列用字母表示, 行用数字表示, 具体看样例解释; 解题思路 签到题不多嗦了; 神秘代码 #include<bits/stdc++.h> #define int long ......
Beginner AtCoder Contest 296 abc

T399742 Ting'er loves traveling 题解

Link T399742 Ting'er loves traveling Question 给出一个图,使得 \(1\) 到 \(N\) 的路径上的最大值最小 Solution 看到最大值最小想到二分,二分最大值 \(top\) 然后去 check 验证能不能从 \(1\) 走到 \(N\) Cod ......
题解 traveling T399742 399742 loves

AtCoder Beginner Contest(abc) 325

B - World Meeting 难度: ⭐ 题目大意 一家公司在全球多地都有分公司; 现在总公司想选择一个时间点让所有公司都来开会; 但是每个公司的上班时间是 9:00-18:00; 给定每个公司的人数和相对于总公司的时差, 会议持续一个小时, 请问总公司最多能让多少人参加会议 解题思路 因为数 ......
Beginner AtCoder Contest 325 abc

[ABC259Ex] Yet Another Path Counting

\(\text{Links}\) [ABC259Ex] Yet Another Path Counting Luogu Blog 题外话 淀粉质题单做不动了怎么办?来做一道根号题振奋一下精神吧/se! 我要饿死了,我要吃饭,以后在学校还是不要不吃早饭了/kk 题意 给一个 \(n\times n\) ......
Counting Another Path ABC 259