counting 212h abc nim
[ABC328D] Take ABC 题解
题目大意: 给你一个字符串 \(s\)。你要在其中找到多少个 ABC 的子串,例如 AABCBC 算两个,删掉中间的 ABC 后,前面的和后面的加起来也是一个 ABC,所以就算两个。 思路分析: 首先很容易写出暴力,把一个 ABC 提取出来后把后面的元素往前移,然后再重复操作,但是我们发现时间复杂度 ......
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)\) ......
[ABC327D] Good Tuple Problem 题解
分析: 这一道题很容易发现可以用并查集来维护 (不知道为什么其他人都用了图论),\(a_i\) 与其对应的 \(b_i\) 代表着 \(a_i\) 这个集合里不能存在着 \(b_i\)。 根据只有存在两个集合,所以我们会发现,若 \(x\) 与 \(y\) 不在一个集合且 \(x\) 与 \(z\) ......
[ABC321G] Electric Circuit 状压DP
用到了好多技巧的状压DP 我们先统计总数然后除以m的阶乘就可以了 设f[i]表示状态为i的集合造成的贡献数(也就是状态为i的集合 不与集合外的点联通 且 这个集合联通块数是1 的情况数) 不与集合外的点联通的话只用考虑结合i之间连边,集合外那些点之间两边就可以啦 这个集合联通块数是1 就比较难处理了 ......
[LeetCode] 2563. Count the Number of Fair Pairs
Given a 0-indexed integer array nums of size n and two integers lower and upper, return the number of fair pairs. A pair (i, j) is fair if: 0 <= i < j ......
[LeetCode] 2824. Count Pairs Whose Sum is Less than Target
Given a 0-indexed integer array nums of length n and an integer target, return the number of pairs (i, j) where 0 <= i < j < n and nums[i] + nums[j] < ......
ElasticSearch之cat count API
读取当前存储的记录的数量。 命令样例如下: curl -X GET "https://localhost:9200/_cat/count?v=true&pretty" --cacert $ES_HOME/config/certs/http_ca.crt -u "elastic:ohCxPH=QBE+ ......
MySQL中count()、sum()区别
1、count0函数 里面的参数是列名的的时候,会计算有值项的次数sum(函数 里面的参数是列名的时候,会计算 列名的值的和。2、两个函数在 记录的列名的值为空或者是null时,都不会去统计即count(列名)和sum(列名) 都不计入这条记录 3、count()可以计算出行数,count (1)也 ......
abc290g O(TD)算法
前言 似乎洛谷上的题解和AT官方都给的 \(O(TD^2)\) 算法? 这里给出乱搞搞出的一种 \(O(TD)\) 算法。 题解 首先发现 \(D\) 虽然没给出固定上界,但显然不超过 \(log_2 10^{18}=60\)。 再接下来可以发现删边等价于先选一颗子树,再删掉这颗子树内部的子树。 先 ......
[ABC328D] Take ABC 题解
链接 如果只是扫一遍肯定是不行的,所以我们使用一个栈,遇到 C 就判断栈顶的两个元素是不是分别为 B 和 A。这样就能做出来这道题了。 代码 #include<bits/stdc++.h> using namespace std; string s; char stk[200010]; int ma ......
09-基础SQL-DQL(数据查询语言)-聚合函数(count、max、min、avg、sum)
DQL-介绍(常用) DQL英文全称是Data Query Language(数据查询语言),数据查询语言用来查询数据库中表的记录 查询关键字:SELECT DQL-语法 ......
AtCoder Beginner Contest(abc) 326
B - 326-like Numbers 难度: ⭐ 题目大意 如果一个三位数的百位和十位的乘积等于个位, 那么这个数就是合法的; 问大于等于n的最小的合法的数是多少; 解题思路 因为数据范围很小, 所以可以直接暴力; 神秘代码 #include<bits/stdc++.h> #define int ......
AtCoder Beginner Contest 329 (ABC329)
A. Spread 不说了,代码。 B. Next 不说了,代码。 C. Count xxx Description 给定一个长度为 \(N\) 的字符串 \(S\),求 \(S\) 中非空连续,并且包含重复字符的连续子串长度。 例如 $S = $ aaabaa,则它满足上述条件子串为 a,aa,a ......
[ABC329E]Stamp
为了方便,我们记 \(T\) 为印章。 不可能出现上图的情况(或者说无效),区间都必须是左右端点严格递增的。 发现新增一个区间,无非就是放在上面/下面两种情况。 考虑用 \(f[i][j]\) 表示前 \(i\) 个字母全部匹配,且第 \(i\) 个字母恰好在最右侧的模式串的第 \(j\) 个位置是 ......
[ABC328C] Consecutive 题解
Hello World 链接 这道题是一个很明显的前缀和,我们把 $sum_i$ 表示为前 $i$ 个字符有多少个有重复,查询的时候就用 $sum_{r-1}-sum_{l-1}$ 就行了。 代码 #include<bits/stdc++.h> using namespace std; string ......
[ABC326C] Peak 题解
题目链接 题目思路 这个问题要求找到一个半开区间,使得在这个区间内包含尽可能多的礼物。首先,我们需要将输入的礼物坐标按照从小到大的顺序进行排序。然后,我们可以使用双指针的方法来寻找最佳的区间。 代码 以下是代码解释: #include<bits/stdc++.h> using namespace s ......
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( ......
[ABC326D] ABC Puzzle 题解
题目链接 解法分析 这个问题是一个经典的排列谜题,通过回溯算法来穷举所有可能的字符排列,然后验证是否满足行和列约束。这个解决方案可以用于解决类似的谜题,其中需要满足一定的排列条件。通过仔细考虑约束条件,可以加快解决问题的速度,减少不必要的计算。 更详细的我写在代码里了。 代码 #include <b ......
AtCoder Beginner Contest(abc) 296
B - Chessboard 难度: ⭐ 题目大意 给定一个8*8的字符矩阵, 其中只有一个' * ', 输出它的坐标; 其坐标的列用字母表示, 行用数字表示, 具体看样例解释; 解题思路 签到题不多嗦了; 神秘代码 #include<bits/stdc++.h> #define int long ......
T399753 counting problem(计数问题)题解
Link T399753 counting problem(计数问题) Question 给出一个正整数 \(n\) ,求 \(AB+CD=n\) 的方案数, \(A,B,C,D\) 都是要求是正整数 Solution 考虑直接枚举 \(ABCD\) 显然是不切实际的 那么就折半枚举 设 \(F_i ......
AtCoder Beginner Contest(abc) 325
B - World Meeting 难度: ⭐ 题目大意 一家公司在全球多地都有分公司; 现在总公司想选择一个时间点让所有公司都来开会; 但是每个公司的上班时间是 9:00-18:00; 给定每个公司的人数和相对于总公司的时差, 会议持续一个小时, 请问总公司最多能让多少人参加会议 解题思路 因为数 ......
mysql group by 执行原理及千万级别count 查询优化
大家好,我是蓝胖子,前段时间mysql经常碰到慢查询报警,我们线上的慢sql阈值是1s,出现报警的表数据有 7000多万,经常出现报警的是一个group by的count查询,于是便开始着手优化这块,遂有此篇,记录下自己优化过程中的心得。 优化慢sql前,肯定是要懂sql的查询逻辑,所以我先介绍下g ......
[ABC259Ex] Yet Another Path Counting
\(\text{Links}\) [ABC259Ex] Yet Another Path Counting Luogu Blog 题外话 淀粉质题单做不动了怎么办?来做一道根号题振奋一下精神吧/se! 我要饿死了,我要吃饭,以后在学校还是不要不吃早饭了/kk 题意 给一个 \(n\times n\) ......
【题解 ABC180F】 Unbranched
[ABC180F] Unbranched 题面翻译 求 \(N\) 个点,\(M\) 条边且满足以下条件的图的数量: 图中无自环; 每个点度数最多为 \(2\); 连通块大小的最大值恰好为 \(L\)。 答案对 \(10^9+7\) 取模。 \(2\le N\le300\),\(1\le M,L\l ......
[ABC288D] Range Add Query
先考虑将原序列差分一下,事实上,我们对于这类每次可以操作一个区间减去固定值的时候,我们一般都需要差分,因为差分后,我们的操作实际上相当于 **在差分序列上修改两个点**,这个时候的问题是好考虑的。 这时候问题转化为,我们每次可以选择两个距离恰好为 $k + 1$ 的点,将 $l$ 加上 $w$,将 ......
AtCoder Beginner Contest(abc) 324
B - 3-smooth Numbers 难度: ⭐ 题目大意 给定一个数字n, 问是否可以找到两个数x和y, 使得 n = 2x3y; 解题思路 因为n的范围最大到1e18, 所以只需要暴力找x和y即可; 神秘代码 #include<bits/stdc++.h> #define int long ......
abc280F - Pay or Receive(判断是否全为零环)
https://atcoder.jp/contests/abc280/tasks/abc280_f 对于每一个连通块单独处理,首先判断是否全为0环,可以用bfs判断。 从一个点出发计算其他点到它的最短距离,如果存在一个不唯一,说明存在非零环。 然后计算距离的时候直接-d[x]+d[y]即可 #inc ......
[ABC090D] Remainder Reminder
原题链接: 洛谷 $\ $ AtCoder 如果你觉得 \(O(n)\) 没有跑到极限的话,你可以试试整除分块。 先来化一下式子: \[\sum\limits_{i=1}^n\sum\limits_{j=1}^n\;[i\bmod j\ge k] \]\[\sum\limits_{i=1}^n\su ......
AT_abc265_d 题解
### 题意 给出一串数,请尝试在这串数中找到三段**连续**的子段,使得这三个子段的和分别为 $P$、$Q$ 和 $R$。问:是否可行? ### 思路 通过观察,观察我们可以发现,其实我们可以根据题目的要求写出一段关系式: $A+P+Q+R+B$(其中 $A$ 表示被选子段前面没被选的子段和,其中 ......