division integer 288f abc
AT_abc335_a 题解
直接对于输入的字符串进行操作就好了,需要注意的是 string 类型的最后一位是 a.size()-1 而不是 a.size()。 #include<bits/stdc++.h> using namespace std; int main(){ string a; cin>>a; a[a.size( ......
AT_abc335_b 题解
样是一道水题, \(N \le 21\)? 这么小的数据还在等什么,直接三重循环暴力枚举即可通过此题。 #include<bits/stdc++.h> using namespace std; int main(){ int n; cin>>n; for(int i=0;i<=n;i++){ for ......
「杂题乱刷」AT_abc008_3
题目传送门(at) 题目传送门(luogu) 简单期望。 算法一: 枚举全排列,时间复杂度 \(O(n!)\)。 算法二: 分别求出每一个硬币的期望。为 \((sum/2+1)/(sum+1)\),\(sum\) 为已经翻面的硬币个数,时间复杂度 \(O(n^2)\),可以通过此题。 参考代码: 点 ......
「杂题乱刷」AT_abc007_3
传送门(at) 传送门(luogu) 深搜 & 广搜的模板题。 这题深搜比较简单,只需要记忆化即可,我们来考虑一下广搜,实际上这题广搜的思路与记忆化差不多,开个结构体分别记录 \(x,y,minn\) 表示 \(x,y\) 坐标及到这个坐标的最小次数,容易证明每次搜到的一定就是这个坐标的最小值,时间 ......
ABC271 复盘
ABC271 复盘 At 链接 LG 链接 [ABC271A] 484558 思路解析 根据小学学过的进制转换法可得,\(10\) 进制转换成 \(x\) 进制可以用 \(10\) 进制反复除 \(x^k\),其中 \(k\) 代表在 \(x\) 进制下的第 \(k\) 位,然后在每次除完后取余再反 ......
ABC320G Slot Strategy 2 (Hard)
ABC320G 直接做不是很好做,考虑用二分将其转化为判断可行性的问题。 发现每个字符串都会对应一个唯一的时间,每个时间最多也只对应一个字符串,这启发我们将字符串与时间连边,然后跑二分图的最大匹配。这样的总点数是 \(\mathcal{O}(nm)\) 的,无法通过。但是每一种字符中只有前 \(n\ ......
[ABC273D] LRUD Instructions 题解
[ABC273D] LRUD Instructions 题解 很好的一道大模拟,使我爆 \(0\)。 思路解析 大模拟,我们只需要用一个 \(x,y\) 表示我们当前的位置,而对于每一个移动,我们就判断在当前移动方向上离当前点最近的点,若该点在当前行进路线上,则把当前位置设为该点前面的一个。 其中判 ......
[ABC268E] Chinese Restaurant (Three-Star Version) 题解
[ABC268E] Chinese Restaurant (Three-Star Version) 题解 思路 hzl大佬的神仙思路。 考虑菜对轮数做贡献,可以发现一定是形如 \(0,1,2,...n/2,...0,..\) 之中的一段,研究 \(0,1,2...,n/2,...,0\),可以通过二 ......
[ABC271E] Subsequence Path 题解
[ABC271E] Subsequence Path 题解 思路解析 很好的一道题,很有迷惑性,表面上是一道图论实际上是 dp,定义 \(f_{i}\) 为从 \(1\) 到 \(i\) 的最短 “好路”。先把每条边对应的起点,终点和边权记录下来,然后输入每个 \(e\),由于是子序列顺序不会改变, ......
[ABC271G] Access Counter 题解
[ABC271G] Access Counter 题解 思路 挺难的 DP。 状态里面不能含有天数,只能从时间点入手,一眼矩阵快速幂所以考虑以登录次数作为阶段设计状态。 可以得到这个DP:\(g_{i ,j}\) 表示登录 \(i\) 次,且第 \(i\) 次登录在 \(j\) 时刻的概率。 转移可 ......
「ABC334F Christmas Present 2」题解
Cnblogs 线段树优化 dp?线段树优化 dp! Solution 题目来源:ABC334F(in 洛谷| in AtCoder)题目大意很清晰就不讲了。 我们发现礼物是固定从 \(1\sim n\) 房间送的,唯一要分讨的地方就是什么时候要回去拿礼物。所以很容易想到二维 dp。 定义 \(f_ ......
CF1916F Group Division记录
题目链接:https://codeforces.com/contest/1916/problem/F 题意 已知点双连通的图 \(G = (V, E)\)。求一种划分方式 \(V = V_1 \cup V_2\),使得 \(|V_1| = n_1\),\(|V_2| = n_2\),且 \(G\) ......
CodeForces 1916F Group Division
洛谷传送门 CF 传送门 考虑增量构造第一个集合。首先令 \(S = \{1\}\),然后不断找到下一个点 \(u\),使得它在抠掉 \(S\) 的图上不是割点,并且与 \(S\) 连通。然后令 \(S \gets S \cup \{u\}\)。 可以证明一定能找到这样的 \(u\)。 因为对于抠掉 ......
Integer
PG有3种整数类型。 Storage Size smallint 2 bytes integer 4 bytes bigint 8 bytes 选型建议: 仅当字段的范围超出integer时,才会选用bigint,否则不要选用它,既多占存储空间,计算性能又不如integer。 仅当字段的范围肯定不会 ......
AtCoder_abc334
A、Christmas Present 跳转原题点击此:A题地址 1、题目大意 给你bat和glove的价格,选择价格高的那个,并输出"Bat"或者"Glove"。 2、题目解析 没啥好说的,直接比较即可,记得不要输错英文字母。 3、具体代码 #include<bits/stdc++.h> usin ......
AT_abc299_h 题解
原问题可转化为:在一个长为 \(10^9\) 的环上,每次走 \(1\sim6\) 步,指定起点,问到原点的期望步数。 考虑走到 \(-1\sim-6\) 的期望步数。我们发现,对于 \(X-R\equiv -i\pmod {10^9},i\in[1,6]\),\(C\) 的期望应该存在线性关系,因 ......
[ABC216G] 01Sequence
题目链接 很显然,按照右端点从小到大排序,对于每段区间尽量地贪心放在靠右的位置即可。 中间用 std::set 维护当前还是 \(0\) 的位置,以及树状数组维护区间 \(1\) 的个数。 点击查看代码 #include <bits/stdc++.h> #define FL(i, a, b) for ......
[ABC212H] Nim Counting
题目本质就是对一个多项式 \(F\) 进行等比数列求和得到 \(G\)(\(F_i\) 表示 \(i\) 在序列 \(A\) 中的出现次数),求 \(G\) 所有下标 \(>0\) 的位置的权值和。 显然,\(M\) 固定就可以直接做了。但 \(M\) 不固定,所以我们只能暴力枚举 \(M\) 并进 ......
[ABC334C] Socks 2 题解
题目传送门 一道贪心题。 数量为 \(2\) 的袜子不用考虑,因为最好的情况就是相同颜色的配一对。 我们只需要考虑那 \(k\) 种只有 \(1\) 个的袜子,如果 \(k\) 为偶数,答案为相邻两数之差之和;如果 \(k\) 为奇数,就枚举删掉一个数,让剩下的数按照 \(k\) 为偶数的情况做,最 ......
[ABC334E] Christmas Color Grid 1 题解
题目传送门 一道 dfs 题。 先统计出绿连通块数量,然后对于每个红色方块统计涂成绿色方块后会变成多少个连通块。正常涂成绿色后应该会增加一个大小为 \(1\) 的绿连通块,但若是有不同的绿连通块与其相邻,答案又会减少 \(1\)。 Code #include <bits/stdc++.h> cons ......
ABC267 复盘
ABC267 复盘 At 链接 LG 链接 [ABC267A] Saturday 思路解析 用一个 map 存下每个日期代表的数字,拿 \(6\) 减去即可 code #include<bits/stdc++.h> using namespace std; map<string, int> mp; ......
ABC333G
题面 给定一个小于 \(1\) 的正实数 \(r\) 和一个正整数 \(n\)。 要求在满足 \(0≤p≤q≤n\) 和 \(\gcd(p,q)=1\) 的前提下,找到使 \(|r-\frac{q}{p}|\) 最小的二元组 \((p,q)\) 。 如果存在多个这样的二元组 \((p,q)\),输出 ......
AT_abc020_c 题解
链接(atcoder) 链接(luogu) 简单算法组合(? 算法一 爆搜,时间复杂度 \(O(2^{n \times m} \times t)\),不能通过此题。 算法二 考虑二分 \(t\),然后暴搜,时间复杂度 \(O(2^{n \times m} \times log2(t))\),不能通过 ......
[ABC267F] Exactly K Steps 题解
[ABC267F] Exactly K Steps 题解 思路 首先发现,如果对于查询 \((u, k), k > 0\) 可行,那么对于 \((u, k - 1)\) 也一定可行,因为往回走一步就可以了,所以对于一个点可以找到离它最远的点,根据直径的结论,这个点一定是直径的端点之一。 为了方便做, ......
AtCoder_abc334
AtCoder_abc334 A - Christmas Present 题目描述 输入两个数 \(B,G(B \neq G)\) ,若 \(B\) 大,输出 Bat ,否则输出 Glove 。 解题思路 无 Code // Problem: A - Christmas Present // Con ......
Integer数组与int数组排序对比
使用Arrays.sort的方法发现int数组和Integer数组的sort方法有区别 Integer[] arr = {1,2,3}; int[] arr1 = {1,2,3}; Arrays.sort(arr1); Arrays.sort(arr, new Comparator<Integer> ......
CF1051C Vasya and Big Integers 题解
Problem - 1051E - Codeforces Vasya and Big Integers - 洛谷 感谢女队提交记录推荐给我的一道题 \(Orz\) 首先 \(O(n^2)\) 的 \(dp\) 是 simple 的,如果你没看出来你可能是像我一样把题目看错了 设 \(dp_i\) 表 ......
『LeetCode』8. 字符串转换整数 (atoi) String to Integer (atoi)
题目描述 请你来实现一个myAtoi(string s)函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的atoi函数)。 函数myAtoi(string s)的算法如下: 读入字符串并丢弃无用的前导空格 检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有) ......
『LeetCode』7. 整数反转 Reverse Integer
题目描述 给你一个 32 位的有符号整数x,返回将x中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1],就返回 0。 假设环境不允许存储 64 位整数(有符号或无符号)。 示例 1: 输入:x = 123 输出:321 示例 2: 输入:x = ......