离线赛-总结
文章平均质量分 83
Caristra
live for code
展开
-
noip 2018 模拟赛18
T1T_1T1——num(2032)Description:求第nnn个刚好有kkk个111的二进制正整数。n≤1030,2≤k≤20n\le10^{30},2\le k\le20n≤1030,2≤k≤20,答案长度不超过100010001000Solution:比较常规的组合数,对于每一位iii,我们判断Cn−1i−1C_{n-1}^{i-1}Cn−1i−1是否大于当前的值即可。...原创 2018-11-08 08:52:27 · 271 阅读 · 0 评论 -
noip 2018 模拟赛1
T1T_1T1——matrix(3118)Description:在一个n∗mn*mn∗m的只包含0,1的矩形中,求有多少个特殊的子矩形,特殊的字矩形满足它的四条边上都是1,内部的0,1个数差不超过1,大小至少为2*2。n,m≤300n,m\le300n,m≤300Solution:对于找一个字矩形的问题,我们可以先尝试地枚举一条边,作为长,再枚举一下宽。这样就是Θ(n2m)\Th...原创 2018-10-18 19:35:07 · 294 阅读 · 0 评论 -
NOIP集训Day6
T1T_1T1Solution:Solution:Solution:(∑i=1mpre[i−1]∩suf[i+1])−(n−1)∩all(\sum_{i=1}^{m}{pre[i-1] \cap suf[i+1]}) -(n-1)\cap all(∑i=1mpre[i−1]∩suf[i+1])−(n−1)∩allT2T_2T2Solution:Solution:Solution:...原创 2018-10-06 14:28:17 · 249 阅读 · 0 评论 -
noip by 20XZH02
T1T_1T1——theorem(3926)Description:有一个长度为nnn的序列AAA。现在定义一个好连续子序列为子序列元素的按位或之和不小于KKK。求好的连续子序列数量。n≤105,Ai,K≤109n\le10^5,A_i,K\le10^9n≤105,Ai,K≤109Solution:首先说一下Θ(n)\Theta(n)Θ(n)的想法考试时看错题然后莫名其妙想到了…...原创 2018-09-27 18:52:13 · 166 阅读 · 0 评论 -
2018.9.20 离线赛 by KanaD
T1——diamond(3923)Description:有一个n∗nn*nn∗n的矩形,每个格(i,j)(i,j)(i,j)上的权值是数i+ji+ji+j的奇数码之和与偶数码之和之差的绝对值.eg:3241=∣(2+4)−(1+3)∣eg: 3241=|(2+4)-(1+3)|eg:3241=∣(2+4)−(1+3)∣.这样有qqq组询问.n,q≤106n , q \le 10^6n,q≤...原创 2018-09-21 20:31:47 · 160 阅读 · 0 评论 -
POI 2014 切题记
POI 2014 Salad BarDescription:有一个长度为nnn的字符串,每一位只会是ppp或jjj。你需要取出一个子串SSS(从左到右或从右到左一个一个取出),使得不管是从左往右还是从右往左取,都保证每时每刻已取出的ppp的个数不小于j的个数。你需要最大化∣S∣|S|∣S∣。n≤106n \le 10^6n≤106Solution:先从左到右扫一遍得到以每个点为左端点,...原创 2018-09-26 11:27:55 · 284 阅读 · 1 评论 -
2018.9.10离线赛 by Satori
T1——satellite(3907)Description: 有一个环形道路,城市iii与城市i+1i+1i+1相连,每个城市之间有disidisidis_i,每个城市有补给valivalival_i.现在询问对于每个城市iii做为起点,能否完成环游一圈,即再回到起点iii. n≤106n≤106n \le 10^6Solution:首先一看数据范围,不难猜想是此题是一个Θ(n...原创 2018-09-11 10:00:30 · 179 阅读 · 0 评论 -
2018.9.12 离线赛 by CalvinJin
T1——gcd(3915)Description:给你两个数AAA,BBB,求gcd(An+Bn,A−B)mod(109+7)gcd(An+Bn,A−B)mod(109+7)\gcd(A^n+B^n,A-B) mod (10^9+7).特殊地,gcd(0,x)=xgcd(0,x)=x\gcd(0,x)=x. A,B,n≤1018,B≤AA,B,n≤1018,B≤AA,B,n \le 10...原创 2018-09-13 19:47:27 · 224 阅读 · 0 评论 -
2018.9.11离线赛 by Isrothy
T1——jsr(3910)Description:给你一个初始数字AAA,和目标数字BBB.你需要按照以下操作将AAA变为BBB. 数字xxx的二进制式(可以有前导000)下,将000,111的位置任意排列.再令x+1x+1x+1. 求最少次数的操作将AAA变为BBB.若无解,输出−1−1-1. A,B≤1018A,B≤1018A,B \le 10^{18}Solution:...原创 2018-09-13 18:56:07 · 341 阅读 · 0 评论 -
2018.9.17 离线赛 by ShimaKZ&EastKing
T1——faker(3920)Description:有一个长度为nnn的初始为空的序列{AAA},有m个操作,每个操作有:1. lll,rrr对区间[l,r][l,r][l,r]加111.2. lll,rrr重复操作[l,r][l,r][l,r].求操作完后序列{AAA}.n≤106n \le 10^6n≤106Solution:不难发现操作2是对于前面的操作,那么就要从后往前...原创 2018-09-18 18:58:42 · 229 阅读 · 0 评论 -
2018.9.4离线赛总结
T1——happy(2958)题意: 定义一个数为happyhappyhappy,即只有一位上的数与其它位上的数不同,询问[a,b][a,b][a,b]内happyhappyhappy数的个数. a≤b≤1016a≤b≤1016a \le b \le 10^{16} 思路: 刚刚开始还以为是数位dpdpdp,敲完暴力发现只要枚举位数构造一下再判一下是否在[a,b][a,b][a,b]中...原创 2018-09-04 14:04:46 · 179 阅读 · 0 评论 -
noip 2018 模拟赛9
T1T_1T1——policy(3115)Description:有一个n⋅mn \cdot mn⋅m的矩形,现在有qqq次询问,每次询问一个a⋅ba \cdot ba⋅b的子矩形,若它的最大值mx,权值和为sum,求min{mx⋅a⋅b−sum}min\{mx\cdot a\cdot b-sum\}min{mx⋅a⋅b−sum}。n,m≤1000,Ai,j≤109,q≤10n,m\le1...原创 2018-10-25 14:28:27 · 239 阅读 · 0 评论 -
noip 2018 模拟赛2
T1T_1T1——one(3004)Description:一个只包含0,1的n⋅mn \cdot mn⋅m的矩阵,可以无数次任意交换两行,求交换后最大的1的面积。n,m≤3000n,m\le 3000n,m≤3000Solution:这里的操作是可以交换行,那么我们可以贪心地,找出对于每一行上的1的最大连续长度,再通过列的前缀和(后缀和)求出当前长度为jjj的最长宽度。Code...原创 2018-10-23 07:42:09 · 253 阅读 · 0 评论 -
noip 2018 模拟赛10
T1T_1T1——block(3829)Description:有一排nnn个积木,每个的高度为hih_ihi,现在有水从000开始每秒上涨111单位,求mmm次询问,每次询问sss秒时,积木没被淹没的连通块个数。n,m≤500000,hi≤109,si≤sj(i≤j)n,m\le 500000,h_i\le10^9,s_i\le s_j(i\le j)n,m≤500000,hi≤1...原创 2018-10-28 19:21:47 · 298 阅读 · 0 评论 -
noip 2018 模拟赛17
T1T_1T1——grasshopper(3085)Description:在一个n⋅nn\cdot nn⋅n的矩形中,从第RRR行第CCC列开始。按照以下规则遍历:(1):跳到相邻的行,并且列坐标之差要大于111,即 ∣r1−r2∣=1|r1−r2|=1∣r1−r2∣=1 且 ∣c1−c2∣>1|c1−c2|>1∣c1−c2∣>1(2):跳到相邻的列,...原创 2018-11-08 08:09:47 · 199 阅读 · 0 评论 -
noip 2018 模拟赛16
T1T_1T1——gxc(3830)Description:有一个长度为nnn的序列AAA,假如有将该序列划分成mmm个区间,满足每个区间排序后序列AAA是有序的,求最大的mmm。n≤200000,1≤Ai≤109n\le 200000,1\le A_i\le 10^9n≤200000,1≤Ai≤109Solution:这题有许多解法,有Θ(n)\Theta(n)Θ(n)的什么前缀...原创 2018-11-05 19:15:57 · 267 阅读 · 0 评论 -
noip 2018 模拟赛15
T1T_1T1——slon(1783)Description:对于一个表达式SSS,形如5+x∗(3+2),x+3∗x+4∗(5+3∗(2+x−2∗x))5+x*(3+2),x+3*x+4*(5+3*(2+x-2*x))5+x∗(3+2),x+3∗x+4∗(5+3∗(2+x−2∗x)),求最小的非负数xxx,使得表达式的值对MMM取模后为PPP。注意:xxx的指数不超过111,且一个运算符...原创 2018-11-03 16:40:42 · 217 阅读 · 0 评论 -
noip 2018 模拟赛13
T1T_1T1——nim(3833)Description:有nnn堆石子,第iii堆的石子个数为iii,两人可以每次可以在其中一堆中拿任意数量的石子,无法再继续拿为败。求必胜的方案数。n≤101000n\le 10^{1000}n≤101000Solution:由于出题人的疯狂,强行练一练高精度,此题可以说是博弈题,也可以说是找规律题(你甚至可以在大样例中找规律)具体的规律是:...原创 2018-11-01 18:05:59 · 281 阅读 · 0 评论 -
noip 2018 模拟赛12
T1T_1T1——gold(3079)Description:有一个n⋅mn \cdot mn⋅m的矩形,对于每一行,可以选择前k,k∈[1,n]k,k\in[1,n]k,k∈[1,n]个数。求全部选完后的平均值的最大值。n⋅m≤105,Ai,j≤109n \cdot m\le 10^5,A_{i,j}\le 10^9n⋅m≤105,Ai,j≤109Solution:一看到求平均...原创 2018-11-01 16:23:53 · 276 阅读 · 0 评论 -
noip 2018 模拟赛4
T1T_1T1——coci(1737)Description:在三场考试中,有nnn为选手,现在已知每位选手的第一场和第二场的分数,并且知道若选手AAA的第一场和第二场的分数都严格大于选手BBB,则AAA的第三场的分数一定大于BBB,以及每场的分数为0~650。求每位选手最后总分的最高排名和最低排名。n≤500000n\le50 0000n≤500000Solution:模拟小数据,...原创 2018-10-24 16:48:52 · 289 阅读 · 0 评论 -
noip 2018 模拟赛8
T1T_1T1——seq(3018)Description:有一个长度为nnn的序列AAA,每次操作可以将相邻的两个数Ai,Ai+1A_i,A_{i+1}Ai,Ai+1删去,在这个它们位置之间插入max{Ai,Ai+1}max\{A_i,A_{i+1}\}max{Ai,Ai+1},而这样操作的代价为max{Ai,Ai+1}max\{A_i,A_{i+1}\}max{Ai,Ai+1...原创 2018-10-24 14:43:17 · 224 阅读 · 0 评论 -
noip 2018 模拟赛3
T1T_1T1——river(3035)Description:有一个座长度为LLL的范围为[1,L][1,L][1,L]的桥,而桥上有mmm个石子,从起点111开始,跳,每次跳的范围为[S,T][S,T][S,T],求最少踩几个石子过桥。L≤109,m≤100,s≤t≤300L\le10^9,m\le100,s\le t\le300L≤109,m≤100,s≤t≤300Solution...原创 2018-10-24 07:39:02 · 265 阅读 · 0 评论 -
noip 2018 模拟赛11
T1T_1T1——binary(3093)Description:对于一个二叉树,我们知道若根的编号为xxx,则它的左儿子编号为2⋅x2\cdot x2⋅x,右儿子编号为2⋅x+12\cdot x+12⋅x+1。现在有一串字符,包含′P′,′L′,′R′,′∗′'P','L','R'...原创 2018-10-29 16:54:13 · 241 阅读 · 0 评论 -
noip 2018 模拟赛7
T1T_1T1——mecho(3070)Description:有一个n⋅mn\cdot mn⋅m的字符矩阵,其中′M′'M'′M′为起点,′D′'D'′D′为终点,′T′'T'′T′为障碍,′H′'H'′H′为敌人起点,敌人会在每一原创 2018-10-23 15:03:55 · 200 阅读 · 0 评论 -
2017.11.05离线赛总结
game ——3808思路:暴力dfs,然而只有30分,正解也显然是数学归纳,也可以按照解答树展开,不难发现ans[i]=ans[i−1]∗2+num[i]∗∑ij=0num[j]∗2jans[i]=ans[i-1]*2 + num[i]*\sum_{j=0}^i num[j]*2^j#include<iostream>#include<cstdio>#include<cstring>#inc原创 2017-11-05 21:45:09 · 232 阅读 · 0 评论 -
2017.11.04离线赛总结
foreat ——3805思路:显然的二分答案,不解释。robot ——3806思路:有点不明显的状压dp(但看数据范围还是能猜出来的),状压颜色,然而还要前缀和预处理一下,并且每次找该状态的lowbit转移。#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include原创 2017-11-04 20:35:37 · 222 阅读 · 0 评论 -
2017.10.26离线赛总结
magic ——4124思路:强模拟,不解释…message ——4125思路:仔细读完题,实际上是找一个最小的环,那么便bfs,但这样只有60, 因为n<=200 000,也便知道只有O(n log n)的复杂度,而且,此题的关系比较明显——父子关系,脑海一闪而过——并查集,再思考一下,并两个集合,查一数,十分符合。#include<bits/stdc++.h>#define REP(i,f,原创 2017-10-26 20:09:20 · 205 阅读 · 0 评论 -
2017.10.6离线赛总结
2017.10.6离线赛总结原创 2017-10-06 15:27:24 · 366 阅读 · 0 评论 -
2017.10.4离线赛总结
2017.10.4原创 2017-10-05 08:42:34 · 237 阅读 · 0 评论 -
2017.10.10离线赛总结
str —2992思路:染色,将每个连通的’.’依依标记id和对应的个数sum。那么答案就是每个’*’的四个方向的连通块sum和。However,每次memset mark[][](判重)是O(n^2)的,所以会超时,也就是只需要for过来…subpal —2993思路:区间dp,和完美队形一模一样,但这是求可行的方案数,那么就前缀和再维护一下dp即可。(然而今天就炸在此题,最后无聊把代码放结构体里原创 2017-10-11 15:26:45 · 216 阅读 · 0 评论 -
2017.10.27离线赛总结
stone ——4127思路:最大值最小,很明显的二分答案。substring ——4128思路:看到求方案数,根条件反射似的,就是无脑dp,至于定义大家都各有不同,但共同的都有dp[i][j]表示前i个选了j次,也就很好转移了,再用前缀和,滚动数组优化一下,就可以了。transport ——4129思路:二分答案,树链剖分或倍增求lca,再树上差分、前缀和,还有一点dfs序。原创 2017-10-28 08:11:12 · 209 阅读 · 0 评论 -
2017.10.19离线赛总结
vigenere ——4106思路:水题,不解释。game ——4107思路:乍一看题意,求最大值最小,脑海中直接蹦出二分答案,然而看清楚题意,再看看数据范围,貌似可以贪心,且可以先估计按L或R 排序。 再仔细推出,答案应该是 max{∏ij=1Lj(Li∗Ri)\frac{\prod_{j=1}^{i}L_j}{( L_i*R_i)}} 。 根据式子,可以看出是按照L*R来排序的。 首先,我原创 2017-10-20 11:05:57 · 241 阅读 · 0 评论 -
2017.10.3离线赛总结
第1题:写书 题意:(…)总而言之,输入n,计算1~n每个数字位数的总和(n<=10^9)虽然是水题,但考试时做的还是太慢了, 现在回忆一下,当时只想着把数切分,再来打个小表。(还虚的要对拍) 然而,这题推公式也是很容易的…第2题:LR棋盘 题意: 有一个长度为1*n的棋盘,有一些棋子在上面,标记为L和R。 每次操作可以把标记为L的棋子,向左移动一格,把标记为R的棋子,向右移动一格,前提原创 2017-10-04 08:57:48 · 312 阅读 · 1 评论 -
2017.10.9离线赛总结
dbclick —2923思路:一道很水的题目,随便怎么搞(向两边扩展或O(n)预处理)。然而我偏偏太过于自信,O(n)预处理时最后一个区域的R忘补充了(一敲起水题来就管不住这双手…)。strsub —2991思路:一道十分有趣的dp,虽然dp很明显,但需要找到其中的规律,结果是要前缀和维护前缀和…(欺负我读书少…)卡了我超久,最后只写了O(n^2),没有用hash优化(O(n))。paths —2原创 2017-10-10 14:14:31 · 266 阅读 · 0 评论 -
2017.10.18离线赛总结
wireless ——4121思路:强模拟…考试时还有点虚了…road ——4122思路:从t倒着dfs一遍到s,标记经过的点,再判断这些点是否满足题意,最后最短路跑一下…equation ——4123思路:一看到a的范围还有的懵逼了,但仔细一想,只要满足这个式子的和为0,且运算中只有‘+’和‘*’,并没有‘/’,那就果断可以mod,即边读边mod,暴力O(n*m),然而这样还是要被卡掉了,正解应该原创 2017-10-19 09:51:05 · 248 阅读 · 0 评论 -
2017.10.17离线赛总结
factor ——4103思路:一个杨辉三角公式…这里就不赘述了。qc ——4104思路:经典的二分答案。可以看出,w越大时,Y越小,越接近S ,然后再前缀和计算Y。也没什么好说的了,然而S读成int,(3个%d连着敲,有点小膨胀)bus ——4105思路:贪心,奇妙的贪心,赛后想想好像也是很正确的… 首先,车一定是从第1站顺次开到第n站的,那么就很可能在某站等人, 所以理所当然的,要预处理每站原创 2017-10-18 10:36:43 · 200 阅读 · 0 评论 -
2017.10.8离线赛总结
第1题:perica ##——1794思路:裸裸的组合公式送分题,然而又是这个mod——wa了。错的原因也很明显,不能先对余再除,而且上次讲过的公式也忘了…但今天的重点不是这,而是逆元! 逆元:简单来说,就是将除法变乘法,减法变加法。如-x=+(-x),1/x=1*x^(-1)。 这里就是要用到有关这个的费马小定理——a^(p-2)=a(mod p)。#include<bits/stdc++原创 2017-10-08 19:44:17 · 236 阅读 · 0 评论 -
2017.11.06离线赛总结
dna ——3811思路:经过昨天第1题的教育后,今天第1题都虚的一档一档写了,结果在暴力的时间上花的太多了,导致想成纯hash(其实题没审清楚),正解十分从简,因为只有4种字符,k也很小,4进制枚举就行了(T_T)。seq ——3812思路:神tm数学题,推导公式。 暴力15分,不解释; 当a0a0于a1a1同号时,可推出从s=4s=4开始数列严格单调(题解时这么说的…),所以就暴力求出前几项原创 2017-11-06 20:51:51 · 234 阅读 · 0 评论 -
2017.10.29离线赛总结
toy ——4130思路:强模拟…running ——4131思路:暴力分还是挺多的,s=t,w=0,s=1,t=1,list时,满打满算还有80分,但功底还是差了点啊,实际上s=1,t=1时,暴力会超时,也就是说必须要用正解了。 仔细理解题意,一个玩家从a 到 b, 沿途到达点的时间为0,1,2,…,b-a,而每个点的观察员只在wi时观察,也就是说,若想要被观察员观察到,就必须是 wi+i 或原创 2017-10-30 07:30:27 · 228 阅读 · 0 评论 -
2017.11.07离线赛总结
travel ——3814思路:显然的dp,但显然有点贪心的味道。 首先,说一下O(n3)O(n^3)的暴力dp:dp[i][j]dp[i][j] 表示走到第i个路段时,上一个路段的高度为j,转移也十分容易,dp[i][j]=min(dp[i−1][k]+abs(A[i]−k)+abs(k−j),dp[i][j])dp[i][j]=min(dp[i-1][k]+abs(A[i]-k)+abs(k-原创 2017-11-07 19:22:50 · 221 阅读 · 0 评论