
【比赛】AtCoder
文章平均质量分 87
cz_xuyixuan
这个作者很懒,什么都没留下…
展开
-
【AtCoder】AtCoder Regular Contest 095 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【C】Many Medians【思路要点】找到原序列的两个中位数\(X\),\(Y\),不妨令\(X≤Y\)。若\(X_i≤X\),\(B_i=Y\),否则\(B_i=X\)。时间复杂度\(O(NLogN)\)。【代码】#include<bits/stdc++.h>using namespace std;const int MAXN ...原创 2018-06-11 20:43:34 · 388 阅读 · 0 评论 -
【AtCoder】AtCoder Grand Contest 034 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【A】 Kenken Race【思路要点】首先, AAA 到 CCC 中与 BBB 到 DDD 中不能存在连续的两个障碍物。其次,若 D<CD<CD<C ,需要额外满足 BBB 到 DDD 中存在至少一个空位两侧均为空位。时间复杂度 O(N)O(N)O(N) 。【代码】#...原创 2019-06-03 09:43:54 · 827 阅读 · 0 评论 -
【AtCoder】ExaWizards 2019 题解
【比赛链接】点击打开链接【题解链接】点击打开链接**【A】**Regular Triangle【思路要点】判断是否 A=B=CA=B=CA=B=C 。时间复杂度 O(1)O(1)O(1) 。【代码】#include<bits/stdc++.h>using namespace std;const int MAXN = 2e5 + 5;ty...原创 2019-03-31 11:21:18 · 742 阅读 · 0 评论 -
【AtCoder】AtCoder Grand Contest 032 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【A】 Limited Insertion【思路要点】考虑时间倒流,对于一个位置 iii ,若 ai=ia_i=iai=i ,则可以将其删去,问是否能将序列删空。不难发现每次删除最大的 iii ,使得 ai=ia_i=iai=i 是唯一的最优策略,模拟之,若无法操作则无解。时间复杂度 O(N2)O(N^2)O(...原创 2019-03-26 17:03:00 · 778 阅读 · 0 评论 -
【AtCoder】AtCoder Regular Contest 096 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【C】Half and Half【思路要点】每次考虑购买两个AB披萨是否会节省,如果会,则购买,并重复这个考虑的过程。否则结束这个考虑的过程,购买剩余所需的A披萨和B披萨。时间复杂度\(O(min\{X,Y\})\)。【代码】#include<bits/stdc++.h>using namespace std;const int MA...原创 2018-06-09 21:07:12 · 399 阅读 · 0 评论 -
【AtCoder】AtCoder Regular Contest 097 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【C】K-th Substring【思路要点】注意到\(K\)很小,我们考虑每次找到该字符串最小的子串,并在后续的过程中不再考虑该子串。对于以\(i\)号字符开头的子串\(S_{i,i}\),\(S_{i,i+1}\),\(S_{i,i+2}\)……,显然有\(S_{i,i}<S_{i,i+1},S_{i,i+2}<……\)。因此,在每一...原创 2018-06-09 10:34:48 · 578 阅读 · 0 评论 -
【AtCoder】AtCoder Regular Contest 098 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【C】Attention【思路要点】用前/后缀和分别统计头领在每个位置时前后需要转向的人数。时间复杂度\(O(N)\)。【代码】#include<bits/stdc++.h>using namespace std;const int MAXN = 300005;template <typename T> void chk...原创 2018-06-08 13:44:31 · 532 阅读 · 0 评论 -
【AtCoder】AtCoder Regular Contest 092 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【C】2D Plane 2N Points【思路要点】按照纵坐标从小到大的顺序来考虑每一个点。若当前点为红点,那么将其横坐标加入当前可用的红点的横坐标集合。若当前点为蓝点,令其与当前可用的红点集合中横坐标恰小于当前点横坐标的红点匹配,并将该红点标记为不可用,若不存在这样的红点,则放弃该蓝点的匹配。用std::set维护当前可用的红点的横坐标集合,时间...原创 2018-06-14 20:51:54 · 402 阅读 · 0 评论 -
【AtCoder】AtCoder Regular Contest 093 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【C】Traveling Plan【思路要点】删除一个点本质上只改变了\(O(1)\)对相邻关系,在总和的基础上调整即可。时间复杂度\(O(N)\)。【代码】#include<bits/stdc++.h>using namespace std;const int MAXN = 100005;template <typename...原创 2018-06-13 20:58:43 · 470 阅读 · 0 评论 -
【AtCoder】AtCoder Regular Contest 094 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【C】找到原序列的两个中位数\(X\),\(Y\),不妨令\(X≤Y\)。若\(X_i≤X\),\(B_i=Y\),否则\(B_i=X\)。时间复杂度\(O(NLogN)\)。【代码】#include<bits/stdc++.h>using namespace std;const int MAXN = 200005;template...原创 2018-06-12 18:23:40 · 366 阅读 · 0 评论 -
【AtCoder】AtCoder Grand Contest 035 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【A】 XOR Circle【思路要点】题目给出的要求等价于相邻的三个数异或和为 000 。特判全部 aia_iai 均为 000 的情况,这种情况是有解的。否则,如果确定 1,21,21,2 号位置为 a,ba,ba,b ,则 333 号位置一定为 a⊕ba\oplus ba⊕b , 444 号位置一定为 aa...原创 2019-08-04 18:25:14 · 547 阅读 · 2 评论