2018.10.29 NOIP2018模拟赛 解题报告】的更多相关文章

得分: \(70+60+0=130\)(\(T3\)来不及打了,结果爆\(0\)) \(T1\):简单的求和(点此看题面) 原题: [HDU4473]Exam 这道题其实就是上面那题的弱化版,只不过把多组数据改成了单次询问. 题解可以参考上面给出的链接. 比赛时我没想到可以这么做,于是写了个除法分块,交上去\(70\)分. \(CJJ\)奆佬写了一个传说中的\(cjj\)筛,结果\(80\)分\(ORZ\). 代码如下: #include<bits/stdc++.h> #define LL l…
得分: \(0+10+10=20\)(\(T1\)死于假题面,\(T3\)死于细节... ...) \(P.S.\)由于原题是图片,所以我没有上传题目描述,只有数据. \(T1\):颜料大乱斗(点此看题面) 由于颜色种类数很少,因此比较容易想到将颜色状压后用线段树去维护. 但是,题目中没有提及初始颜色为\(1\),害得我以为初始颜色为\(0\). 结果爆\(0\). 现将改后的代码贴出来: #include<bits/stdc++.h> #define max(x,y) ((x)>(y)…
得分: \(100+0+100=200\)(\(T2\)悲惨爆\(0\)) \(P.S.\)由于原题是图片,所以我没有上传题目描述,只有数据. \(T1\):query(点此看题面) 熟悉主席树的人都知道,这是一道主席树查询区间排名的模板题. 但是,由于太久没打主席树,我对它有一些生疏了,结果依然用了一个多小时... ... 主席树查询区间排名的大致思路,就是将元素给离散化,然后用\(n\)棵线段树(合并成一棵主席树)分别存储\(1\sim i\)中每个元素出现次数,然后就可以很方便地利用前缀和…
心路历程 预计得分:\(100 + 100 + 20 = 220\) 实际得分:\(100 + 100 + 30 = 230\) 辣鸡模拟赛.. T1T2都是一眼题,T3考验卡常数还只有一档暴力分. 开场发现T1只要用堆维护一下就行,20min切掉,时间有点长因为花了好长时间在找pbds的头文件.. T2很裸的拆位+期望dp,就是分情况讨论有点恶心. T3我想了1h结果正解是压位优化暴力qnmd... 咦?好像连题解一块写完了....那就只贴一下代码吧.. 算了代码也懒得发了数据包戳着儿…
得分: \(30+5+0=35\)(考得真不咋滴) \(T1\):奥义商店(点此看题面) 以为很简单,对着这题想了一个多小时,最后果断打了个暴力交了... ... 看完题解发现其实也不是很难. 对于\(t=1\)的情况,似乎与一道题目很像:[洛谷3396]哈希冲突,可以用分块来做. 对于\(t>1\)的情况,似乎与暴力类似,但是要加一个玄学的优化. 如果有多种颜色,它们的数目分别为\(c_1\sim c_t\),不难想到,给\(k\)染上数目最少的颜色肯定是最优的. 我们用\(Min\)表示\(…
总结:今天去了NOIP模拟赛,其实是几道USACO的经典的题目,第一题和最后一题都有思路,第二题是我一开始写了个spfa,写了一半中途发现应该是矩阵乘法,然后没做完,然后就没有然后了!第二题的暴力都没码QAQ 现在我来写解题报告了,有点饿了QAQ.. 第一题 题目 1: 架设电话线 [Jeffrey Wang, 2007] 最近,Farmer John的奶牛们越来越不满于牛棚里一塌糊涂的电话服务,于 是,她们要求FJ把那些老旧的电话线换成性能更好的新电话线.新的电话线架设 在已有的N(2 <=…
心路历程 预计得分:\(100 + 100 + 70\) 实际得分:\(40 + 100 + 70\) 妈妈我又挂分了qwq..T1过了大样例就没管,直到临考试结束前\(10min\)才发现大样例是假的.然而一切都晚了. T2是最后\(1min\)才做出来的. 我好菜啊..... Sol T1:很显然的一个做法是用堆维护当前应该是哪只猫吃下一条鱼 然后就有各种特殊情况了..其实也比较好判.. T2:按照\((q - p)\)排序后01背包即可,问我为啥么?因为能过大样例啊.. T3:咕咕咕...…
心路历程 预计得分:\(100 + 100 +100\) 实际得分:\(100 + 100 + 60\) 辣鸡模拟赛.. 5min切掉T1,看了一下T2 T3,感觉T3会被艹爆因为太原了.. 淦了20minT2 发现也是个傻逼题.. 写T3感觉特别难受,因为次短路是去年4月学的,很多细节都记不清了. 最后玩了一个多小时的泥巴.. 测完发现自己T3挂掉40分因为自己傻逼的在3个if之间加了else,而且T3数据特别水,不打vis标记的spfa都能A.. 题解. 口胡一下吧. T1 按位考虑,显然0…
写在前面 2020rp++ 停课的第一场模拟赛 拿上一年的上一年的day1来考的, 结果得分期望220pts,实际135pts,rank3,太菜了 考着考着机房灯突然灭了,当时慌的一批 以为断电代码要没了,还好电脑没事 T1铺设道路 这次T1不想上次那么暴力,一开始感觉还挺有思考量 后来发现可以分治做,但我那个板子好像不会打(我对不起Lucky_block) 然后就整了个线段树来维护,并且只需要建树和上传即可,所以还是蛮简单的 合并过程的原理和正解差不多(赛后我才知道差分O(n)就能过) 需要注…
这次的题目难得的水,但是由于许多哲学的原因,第二题题意表述很迷. 然后是真的猜题意了搞了. 不过这样都可以涨Rating我也是服了. Upt:链接莫名又消失了 A. 「NOIP2017模拟赛11.03」Egypt丶小黑车 题意一看就是很精简的数学题, 首先我们用经典的方法,假设我们用\(f_x\)表示\([1,x]\)的答案,那么最后输出的就是\(f_r-f_{l-1}\)了 然后考虑求解\(f_x\).我们知道对于一个\([1,x]\)的区间里,含有约数\(d\)的数有\(\lfloor \f…
心路历程 预计得分:\(100 + 50 + (10 \sim 50)\) 实际得分:\(100 + 10 + 50\) 这可能是我打的最懵逼的一场考试没有之一.. T1两个小时才做出来也是醉了. T2讲过原题但是不会做其实只要改一个字符就能A了 T3只会打套路暴力.. 比赛开场看T1一点思路都没有,不管怎么想都是\(O(n^2)\)的复杂度,做了好久终于发现自己傻逼了这就是个傻逼题.. 开始做T2的时候慌的一批,因为旁边的大佬们都已经把暴力打完了..T2没多想就写了50分(实际上已经无限接近正…
得分: \(100+5+100=205\)(真的是出乎意料) \(T1\):抵制克苏恩(点此看题面) 原题: [BZOJ4832][Lydsy1704月赛] 抵制克苏恩 应该还是一个比较简单的\(DP\)吧(我是用记忆化搜索实现的). 可以用\(f_{n,A,B,C}\)来表示还有\(n\)个回合,三种血量奴隶主个数分别为\(A,B,C\)时所造成的期望伤害. 比较显然,应该有四种情况: 第一种情况:对一血奴隶主造成伤害.这样就杀死了一个一血奴隶主,且不会增加新的奴隶主,因此可以将\(f_{n,…
心路历程 预计得分:\(100 +100 +80\) 实际得分:\(30 + 100 + 80\) 天天挂分..感觉我noip要凉.. T1不难,但是太坑了 T2不难 T3不难,但是在小机房考试脑子都冻僵了没想到std Sol T1:直接判就好了吧,注意确定了\(25\)个之后可以推出第\(26\)个 T2:直接dp一波,然后发现和LIS的转移是一样的 T3:真不知道自己怎么想的,连dfs都没想到. 如果想到dfs就简单了,直接把环找出来,然后暴力判环上的点即可 如果能找到环的话,那么一定是有解…
简述我的苦逼做题经历 考的是NOIP2017day1原题, 开始看到小凯的疑惑时感觉特水,因为这题初中老师讲过, 很nice的秒切 T2发现是个大模拟,虽然字符串不太会用,但起码题意很好理解 边打代码边敲注释,差点变量名不够用 就这样一个半小时过去了,手捏的样例也过了 以为100pts,就放了过去看T3 T3考的是最短路计数,想了想以前好像没有写过这类题, 硬着头皮写了个dfs暴力统计道路数,为防止跑不出来还加了个计数器特判 期望能在无0环样例中骗点分, 后来在luogu上全WA了 T1 小凯的…
心路历程 预计得分:\(100 + 100 + 50\) 实际得分:\(100 + 100 + 50\) 感觉老师找的题有点水呀. 上来看T1,woc?裸的等比数列求和?然而我不会公式呀..感觉要凉 T2应该比较简单,T3 dp能拿很多部分分. 但是T1只打暴力感觉好丢人啊..想了10min发现不用公式也能做,就直接倍增一下就好了. T2水题.感觉比T1还简单.. T3.....这个就比较厉害了呀.赛后我大概问了一下,发现全机房一共读出了\(4\)种题意Orzzz. 然后我花了\(2h\)做了一…
写在前面 T1:期望100pts,实际0pts(7:50 ~ 8:50 T2:期望0pts,实际0pts(10:00 ~ 10:35 T3:期望20pts,实际40pts( 9:10 ~ 10:00,10:35 ~ 11:00 排名:rank2/10 感觉今天状态好多了~ >-<! 今天修树剖太累了,先咕咕咕,有空再把剩下两道题补上还有T3的满分代码,嘻嘻 解题过程 有了CSP的经验,先通读一遍题目,果断开T1,发现数的位数比较小,感觉暴力可以过,但是全排列不会写,发现贪心好像更简单,胡乱搞了…
 好元素 [问题描述] 小A一直认为,如果在一个由N个整数组成的数列{An}中,存在以下情况: Am+An+Ap = Ai (1 <= m, n, p < i <= N ,  m,n,p可以相同),那么Ai就是一个好元素. 现在小A有一个数列,请你计算数列中好元素的数目. [输入格式] 第一行只有一个正整数N,意义如上. 第二行包含N个整数,表示数列{An}. [输出格式] 输出一个整数,表示这个数列中好元素的个数. [输入样例] Sample1 2 1 3 Sample2 6 1 2…
1.校门外的树(tree.c/cpp/pas 128M,1s) Description LSGJ扩建了,于是校门外有了一条长为L的路.路上种了一排的树,每相邻两棵树之间的距离为1,我们可以把马路看成一个数轴,马路的一端在数轴0的位置另一端在数轴L的位置,数轴上的每个整数点都有一棵树. 众所周知,zd是个非常喜欢研究生活中的各种问题的人,zd看到这个现象非常的欣喜,于是他立马就有了一个想法,假如现在要把m个区间内的树全都移走,他想知道最后还剩下多少棵树,由于他刚想出这个问题就被twt拿去一起颓了,…
很久之前写的一套题了,由于今天的时间太多了,所以记起来就写掉算了. 这一场尽管T2写炸了,但也莫名Rank4涨了Rating.不过还是自己太菜. A. 环游世界 首先我们先排个序,想一下如果不用走回来那么直接相邻的两个直接走就可以了. 那么我们要走回来呢,很简单,手动为回来留一条路径即可.还是一样的贪心方法,这次我们一般间隔两个.为什么是一般呢,其实也是对于边界的不同讨论了. 比如对于这样的一种情况,我们可以这样走: 其中红色表示走过去的边,绿色表示走回来的边. CODE #include<cs…
这次的比赛是真心比较狗,我TM的写了30min的树剖ZZ地直接memset超时了 话说我既然想到差分就应该去写差分的啊! 好了不过这次Rank还挺高的,终于要打进前10了当然是假的了. 好了下面开始讲题.链接 A. 幻灯结界 一道非常基础的贪心题,我们只需要两次贪心即可解决. 首先是对于改变防御值的问题,我们可以用一个很显然并且正确的贪心:总是把机会给最小的并且这个最小值应该小于改变的值.否则就没有得到最大的利用. 然后对于下一步我们可以通过一个叫排序不等式的东西.说白了就是:大的对大的,小的对…
这次难道就是传说中的标准分大赛?而且这次比赛的链接不翼而飞了 一堆人153pts然后就有Rank4?看来这个Rank4不值钱了,才涨了50+的Rating. 不过还好最后5min的时候想出了T1正解,否则就会因为少10pts被爆踩了吧 好了开始讲题. T1 这其实是水题,我们很容易想到DP: 令\(f_{i,j}\)表示前\(i\)个数中有i个数选择正数时的最小价值和,则有转移: \(f_{i,j}=min(f_{i-1,j-1}+min(a_{i,0},a_{i,1}),f_{i-1,j}-m…
这次的比赛充满着玄学的气息,玄学链接 首先讲一下为什么没有第十四场 其实今天早上9点时看到题目就叫了:原题! 没错,整套试卷都做过,我还写了题解 然后老叶就说换一套,但如果仅仅是这样就没什么 但等13min后结束这场考试后,一评测发现有人A了T1 但老叶并没有开启Unrated,然后大家集体垫底被踩 然后我就莫名掉了74Rating 但是之后第二场很快就开始了,但是等第二场测完之后还是没有进行Unrated处理,结果就白掉分了 真是Dog至极 然后讲一下题目,这次主要是T2炸了,花了蛮长时间写O…
这次的比赛真心水,考时估分240,然后各种悠闲乱逛 然后测完T1数组开小了炸成40,T2,T3都没开long long,T2炸成20,T3爆0 掉回1600+的深渊,但是还有CJJ dalao比我更惨,链接 T1 这道题就比较simple了,很显然用数据结构乱优化 貌似有很多种解法:单调队列,堆,线段树等等 我主要就讲一下我考试的时候YY出来的线段树 首先我们发现一个性质:对于n次操作之后,序列就进入循环 然后我们只需要处理处前n次询问就可以O(n)处理了 我们开一个前缀和记录原串中1的个数,然…
这次的试卷应该是激励我们一下的,链接 然后大家的分数就都很高,然后我就210被一群秒A T2的240大佬爆踩 掉了5rating但Rank竟然发杀了 X_o_r dalao && YZC dalao 论写暴力的重要性 T1 真心水,直接DFS爆搜即可 O(2^n)不会超,n大了之后可以DP,签到题不解释 CODE #include<cstdio> using namespace std; typedef long long LL; const int N=20; int n,a…
莫名其妙暴涨Rating 其实题目都挺好挺简单的,但是越简单就越容易ZZ 不理解问什么第一题这么多人找环 不过T2是真心细节题,T3太难了 题目戳这里 T1 仔细分析题意发现那个交换规则就是废话,如果有方案的话相当于直接把邮票给别人,因此就很显然了 把人和邮票分开来,由每个人向自己想要的邮票建一条边.最后看一看是否存在完美匹配即可 懒得写网络流了,然后匈牙利哲学复杂度,O(能过) CODE #include<cstdio> #include<cstring> using names…
难得的一次Unrated,避免了重回1500的尴尬 其实题目都还可以,但只不过所有人T1都炸了,可能是数据的锅(假的) 而且我因为T1SB的把T2弃了,没想到是千年水题 T3莫名爆炸,然后TM的40分(再一次感谢Unrated) 链接 T1 题意很简单,主要是思想太牛逼 当时一直在找规律,浪费了2hours.最后搞了一个O(n)的递推然后炸掉 先讲一下递推 f[i][0]表示到第i轮时不经过1号点的方案数 f[i][1]表示到第i轮时经过过1号店且当前不在1号点的方案数 f[i][2]表示到第i…
终于停止了掉Rating的浪潮! 猥琐的链接 这次200分才Rank10,而且很多人并列 庆幸T2最后20分钟发现期望的算法打错了,然后拿到了50pts,250收场 T1 水题*1 这道题不仅做过,而且本来难度就很低,不A对不起自己 主要是一个追及问题,我们枚举所有的人初始时的位置即可 CODE #include<cstdio> using namespace std; const int N=1005; int n; double v,u,d[N],c[N],ans; int main()…
这次的题目都是什么鬼? 玄学乱搞+肉眼看CODE+倒着搜索? 好吧是我ZZ了 链接在此 T1 玄学乱搞 由于考场上写的部分分做法忘记讨论n<=2000时的情况,少得了30pts 很容易得到一个基于排序的算法: 记录每个数的值以及编号 按编号将原数组从大到小排序 对于每一个数,用在它之前的编号最大和最小的分别更新ans 对于这个算法的正确性显然.因为之前所有点的值都比它大,所以可以稳定确立下min(h[i],h[j])的值,然后记录编号的方式就OK了 但是这里的数据是1e7,快拍时间复杂度为O(n…
我是链接 这次是真的惨,码了将近2hours的可持久化线段树炸掉了! 而且本地拍了一万年也没发现哪里炸了. T1 压位的入门题,话说这道题能拿个99分就可以了(100分要FFT) 对于暴力,就是暴力找所有不相同的i的个数,但是,我们发现对于这种01串的题目可以很舒服的压一下位 比如对于10011,十进制下就是19 而对于01110,十进制下是14 我们发现两个串的不同之处就是满足a[i]^b[i]=1的数对总数 因此我们可以对十进制数也进行xor,即19^14=31,31在二进制下为:11101…
链接:http://211.140.156.254:2333/contest/67 转眼间上次加回来的Rating又掉完了. 这次不知为何特别水,T1想了一段时间没想出来弃了,导致后面心态炸了. T2也没有注意到有随机数据,少得了10分. T3也没想过,直接输了些样例再手算了一组数据就没管了. 然而考完发现T1一直卡在一个坑里跳不出来,但很多人都A了T1而我只有30分. 所以一夜回到解放前. T1 实际上是一道分治大水题. 我们先令a[i]=i:然后这当然是不满足要求的. 所以我们每次取出队列中…