NOIp2018集训test-9-5(am)】的更多相关文章

李巨连续AK三场了,我跟南瓜打赌李巨连续AK七场,南瓜赌李巨连续AK五场. DAY1 T1 qu 按题意拿stack,queue和priority_que模拟即可.特判没有元素却要取出的情况. T2 ming 贪心发现ddl越小的任务越早完成越好,排序更新答案即可. T3 zi 可能是昨天看了虚树我脑子不太好用,思维僵化的厉害,打算用虚树搞这道题,然后写了180+,连样例都懒得测知道根本过不了交了个暴力,结果暴力还有70.50min270pt+2h10min0pt. 实际上并不想需要虚树啊,我老…
A题 Tree 问题描述 给定一颗 \(n\) 个点的树,树边带权,试求一个排列 \(P\) ,使下式的值最大 \[\sum_{i=1}^{n-1} maxflow(P_i, P_{i+1}) \] 其中 \(maxflow(s, t)\) 表示从点 \(s\) 到点 \(t\) 之间的最大流,即从 \(s\) 到 \(t\) 的路径上最小的边权 输入格式 第一行一个整数 \(n\) ,表示点数 下接 \(n - 1\) 行,每行三个数 \(u, v,w\) 表示一条连接点 \(u\) 和点 \…
A题 神炎皇 问题描述 神炎皇乌利亚很喜欢数对,他想找到神奇的数对. 对于一个整数对 \((a,b)\) ,若满足 \(a+b\leq n\) 且 \(a+b\) 是 \(ab\) 的因子,则称 为神奇的数对.请问这样的数对共有多少呢? 输入格式 一行一个整数 \(n\) . 输出格式 一行一个整数表示答案,保证不超过 \(64\) 位整数范围. 数据范围与约定 对于 \(20\%\) 的数据 \(n\leq 1000\) ; 对于 \(40\%\) 的数据 \(n\leq 10^5\) ; 对…
A题 Simple 时间限制:1000ms | 空间限制:256MB 问题描述 对于给定正整数\(n,m\),我们称正整数\(c\)为好的,当且仅当存在非负整数\(x,y\)使得\(n×x+m×y=c\). 现在给出多组数据,对于每组数据,给定\(n,m,q\),求\([1,q]\)内有 多少个正整数不是好的. 输入格式 第一行,一个整数\(T\)表示数据组数. 接下来每行三个数,分别表示\(n,m,q\),即一组询问. 输出格式 对于输入的每组数据,输出一行表示答案. 数据规模 对于30%的数…
这是一套简单题,这几天的考试让bike老爷感觉很绝望,说实话我也确实不知道还能怎么更简单了. 这几天的题换做llj.sxy应该都能轻松AK吧,至少随便考个250+应该不是问题吧,我越来越觉得觉得我跟他们的差距真的是非常非常大,dcoier跟其他学校的大佬的差距更是如此.我不知道我之前没有自知之明的时候对自己的定义是怎么样的,但是现在我发现我大概真的是一个堪堪noip一等奖水平的选手. 已经不知道该怎么办了,我甚至很想自暴自弃地大喊,我已经凉了!!dcoi没有救的!!每一届每一届地下去都会凉透的!…
发现自己gradully get moodier and moodier了 负面情绪爆发地越来越频繁,根本out of control,莫名其妙地就像着了魔一样 为什么用英语大概是因为今天早上早自习因为英语考了全班倒数被hj抽上黑板去听写了,就很开心 B 君的第一题 (guangzhou) 虽然我完全不知道Bike在说些什么,但是ycl告诉我,因为任何高斯整数都可以这样表达出来,相当于是把高斯整数表示成一个p进制数,每一位是0或者1.然后手写复数类进制转换就好了. 看模p等不等于0可以不用重载模…
“毕姥爷:今天的题好简单啊,你们怎么考得这么烂啊,如果是noip你们就凉透了啊“ 今天的题难度应该是3.2.1递减的,但是我不知道哪根筋没搭对,平时我最多1h多就弃题了,今天硬生生写了2h20min的T1,要不是倒数50min的时候把T1样例过了,可能今天就废了.然鹅我T只有10pt……然后10min打了T3的50pt,剩下40min打T2的30pt,75pt,100pt然后开开心心地拍还发现30pt部分写错了. B 君的第一题 python 哪个啥子自动机,似乎就是把kmp跳到的地方预处理出来…
打满暴力好像是一种挑战,已经连续几天考试最后一个小时自闭了,因为自以为打完了暴力,然而,结果往往差强人意 大概是考试的策略有些问题 T1: 我们设$g[x]$为在x时取小于等于m个物品的最大价值,下面要证明的是$g$的单调性 1.若k都小于0,那么$g$是单调减的,这种情况下特判0就好 2.若k都大于0,那么$g$是单调增的,这种情况下显然可以二分 3.有的k大于0,有的k小于0,这种情况下$g$先单调减后单调增.为什么?考虑选择的过程,x确定的时候,我们选当前取值>0的前m个(不够的话就不取)…
感觉状态极差啊,今天居然爆零了 主要是以下原因: 1.又是T1看错题肝了两个小时,发现题意理解错误瞬间心态爆炸 2.T2交错了文件名 3.T3暴力子任务和正解(假的)混在一起,输出了两个答案 都想为自己刷个赞,调不出代码是水平不够,但是这样真的让人无话可说,幸好这只是模拟赛 T1: 题意:给出一个集合,要求把这个集合分成两部分,使得一个集合中的任意一个元素都与对面集合的全部元素都互质 我不知道我为什么会写炸这样的傻X题... 显然暴力就是$O(n^2)$枚举,暴力判断gcd是否为1,如果不为1说…
现在才来填坑,之后还要陆续补其他几天的,可能前几天真的太颓了 T1: 题目大意:给定一个长度为n的序列,m次询问每次询问给出l,r,询问区间l到r的元素在模k意义下的最大值 数据范围当然是你暴力写不过的... 老实说我考场敲了主席树,不幸的是只拿到了暴力的分 考虑正解?我们分块.预处理出每一块在模k意义下的最大值,多余部分暴力计算就好 上面一句话显然是废话,我么怎么预处理出每一块在模任意k意义下的最大值呢? 显然在$[ak,(a+1)k)$这一段值域中,数值最大值一定是最优的,我们可以开个表记录…
考试的时候刚了T1两个小时线段树写了三个子任务结果发现看错了题目,于是接下来一个半小时我自闭了 result=历史新低 这告诉我们,打暴力要端正态度,尤其是在发现自己之前出锅的情况下要保持心态的平和,不能和今天的比赛一样后面差不多直接弃疗 T1: 题意就是我们要做多次倒三角的区间加,最后统计全部的异或和.不幸的是当我看到空间限制512MB的时候就直接暴力上线段树了,凉心出题人 正解是很巧妙的二维前缀和做法 考虑我们暴力怎么做--对倒三角的每一行差分,最后统计一次,这样的复杂度是$O(nq)$的…
上午考了一套sb题,但是没有人AK.李巨290虐场. 下午又考了一套sb题,李巨AK虐场.%%% T1 % 中国剩余定理好像做不了啊,我一直在想如何用CRT做,然后就GG了. 然而正解是bike当初说的“CRT根本没用啊你每次合并两个数就可以了”然而这玩意似乎就叫做EXCRT. 洛谷模板传送门 考虑合并 x=y mod P x=bi mod ai k1*P+y=k2*ai+bi k1*P+k3*ai=bi-y exgcd解同余方程,得到一个解,从而得到k1的最小整数解. x=x+k1*P P=l…
中间值 两个log肯定会被卡.我用的第一种做法,就是要各种特判要在两个序列都要二分比较麻烦. //Achen #include<bits/stdc++.h> #define For(i,a,b) for(int i=(a);i<=(b);i++) #define Rep(i,a,b) for(int i=(a);i>=(b);i--) #define Formylove return 0 ; typedef long long LL; typedef double db; usin…
今天被高一狂踩,两个手抖,t1一个1写成2,t3一个+=写成=,所谓失之毫厘谬以千里,直接丢了50分. 完全背包 看到背包体积如此之大物品体积如此之小容易很想到贪心,肯定要先加很多很多的性价比最高的最后一部分再背包处理. 具体到底要加到多少随便估计一下都能过,我非常暴力地把1~100跟其他所有数取lcm再取最大值也就4.8e5的样子,5e5的背包都跑得飞快. 而数据似乎很水有人只跑了100的背包都过了... 题解证明出了更小的限制,最多跑100*100的背包就够了 //Achen #includ…
B 君的第一题 lanzhou $x^{\frac{p-1}{2}}\equiv 1(mod\ p)$ $x\equiv x*x^{\frac{p-1}{2}} (mod\ p)$ $x\equiv x^{\frac{p+1}{2}} (mod\ p)$ $\sqrt{x}\equiv x^{\frac{p+1}{4}} (mod\ p)$ 就成了一道快速幂的题了,然而唯二A了的我和李巨都是用类似复数快速幂那种方法暴力开根号. 我:这道题感觉没意义啊,会二次剩余的暴力开根也开出来了,不会的怎么都…
Bike老爷问了好几天到底要怎样简单的题目你们才能AK啊终于在他每天降难度直到要走了才出了一套我们能AK的题.虽然前几天的题换成llj肯定随便AK. 其实最近有点方虽然通常最后都写完了把该拿的分拿了该拍的拍了,但是并不是很顺利的那种前30min切了T1,再1h切t2拍了最后写t3然后拍这样,这套题推了半天t1没推出来就弃了去搞t2,结果半天把fwt打挂了又去搞t3,开考1h多终于把t3搞出来了才又去回想我的fwt,最后1h先猜了个t1的结论然后先想打个树dp之类的验证发现不会,又证了半天才勉强觉…
B 君的第一题 求斐波那契数列模n的循环节. 1.暴力bsgs,毕姥爷好像说循环节最大是6*n还是多少的,反之比较小,直接bsgs这题是可以过的.但是我非常蠢重载运算符的时候把相等返回成了小于,然后根本把结构体放不进map里去(我以为按道理只有等于的时候会炸,但事实上我根本放不进去啊).然后改成不小于就可以过这题. //Achen #include<bits/stdc++.h> #define For(i,a,b) for(int i=(a);i<=(b);i++) #define Re…
昨天考完月考,明天初赛,dcoi2017级今天终于开始停课准备noip了,大概没有比本弱校停课更晚的学校了吧.本来就够菜了,怕是要凉透哦. DAY1 T1石头剪刀布 据说爆搜随便做,但是我觉得我的O(输出)的时间复杂度还是蛮优秀的. 游戏图画出来是一颗完全二叉树,发现如果知道了根的0,1,2情况和树的高度,不区分左右儿子的情况下可以确定出整棵树.dp求出f[i][j][0/1/2]分别表示高度为i,根为j的这种树中叶子里0,1,2的个数,这样根据输入的0,1,2的个数就可以找到这棵树了. 然后就…
这个day1稍微有点毒瘤吧?? DAY1 排列 以前总是把day1t1想太复杂了翻车,差不多往正解的方向想了一下感觉不可能这么复杂这可是noipday1t1啊一定有非常简单的方法然后翻车了?? 题目转换为求二分图完全匹配数,这个怎么都是十分不好算的,容易想到容斥. 用g[i]表示起码选了i条二分图的补图中的边的匹配数. 那么答案就是 $ans=\sum_{i=0}^{n}g[i]*(n-i)!*(-1)^i$ 发现这个二分图的补图长得十分有特点啊. 这是若干条不想交的链构成的图,链与链之间互不影…
这个NOI模拟题怕是比你们的NOIp模拟题要简单哦.. 友好的生物 应该是一道简单题,但是机房只有辉神一个人想到正解似乎. 被我kd-tree水过去了(这不是kd-tree的裸题吗???(不是)) //Achen #include<bits/stdc++.h> #define For(i,a,b) for(int i=(a);i<=(b);i++) #define Rep(i,a,b) for(int i=(a);i>=(b);i--) #define Formylove retu…
szzq学长出的题,先orz一下. day1 倾斜的线 做过差不多的题,写在我自己的博客里,我却忘得一干二净,反而李巨记得清清楚楚我写了的. 题目就是要最小化这个东西 $|\frac{y_i-y_j}{x_i-x_j}- \frac{P}{Q}|$ 通分 $\frac{Q*(y_i-y_j)-P*(x_i-x_j)}{Q*(x_i-x_j)}$ 把$Q*x$作为新的$x$,$Q*y-P*x$作为新的$y$,题面转换为求两点斜率绝对值的最小值. 按y排序后可发现答案一定出现在相邻的两点间(画图可得…
Am DAY1 抄代码 送分题 //Achen #include<bits/stdc++.h> #define For(i,a,b) for(int i=(a);i<=(b);i++) #define Rep(i,a,b) for(int i=(a);i>=(b);i--) #define Formylove return 0 ; using namespace std; typedef long long LL; typedef double db; char a[N],b[N]…
AM 这是一套在长沙考过而且我能记得全部正解的题,然后期望得分300实际得分155. T1 很套路,随便搞(我当年是怎么花大半场时间写T1并且写出现在两倍长的代码的??) //Achen #include<bits/stdc++.h> #define For(i,a,b) for(int i=(a);i<=(b);i++) #define Rep(i,a,b) for(int i=(a);i>=(b);i--) #define Formylove return 0 ; using…
这是一套去年在长沙考过的题,但是我当时就没理清楚+没写题解(我以前很多博客都写得跟shi一样,完全没有意义,看到就想打当时的我),所以又考得稀烂. T1.star way to heaven 容易想到二分+并查集,二分距离所有星星和边界的最小距离r,也就是距离这些点r以内的范围不能走,也就是看以每个点为圆心r为半径的圆能不能把上下都堵满. 这个做法会被卡成80分.正解是用最小生成树代替二分的过程.答案一定是两个点间的距离,最小生成树相当于是从小到大的枚举答案,可以满足当连接一条边权为w的边时,距…
T1旋转子段 一开始脑袋抽了花了近一个小时写了个跟这题毫无关系的莫名其妙的代码,一急代码就各种bug,最后t1就花了一个半小时多,然后后面时间不太够了,考得稀烂. 因为每个数存在唯一的中心使得绕这个中心翻转后成为”不动点“,容易想到枚举对称中心.因为把关于这个中心对称的所有点都翻转不一定最优(然而王巨直接全翻过了,数据大概是用脚造的),那么按到对称中心的距离排序后一一枚举翻到哪个位置的答案,不翻的部分用前缀和数组维护即可,每个点只会在它的对称中心被枚举到,所以复杂度是nlogn(set or 排…
T1记忆(memory) 我大概是只记忆只有七秒的金鱼吧.看了下以前的代码发现真的很简单,但是考场上只打了个暴力,虽然骗了88pt.就是枚举选的是哪个串,然后vis[i]表示选了i这些位能不能猜出它,然后dp选到i这个状态的概率. //Achen #include<bits/stdc++.h> #define For(i,a,b) for(int i=(a);i<=(b);i++) #define Rep(i,a,b) for(int i=(a);i>=(b);i--) #defi…
T1.矩阵游戏 水题.每一行最后乘的数为x[i],每一列为y[i],暴力算第一行的列的贡献,每一行的列的贡献是公差为所有列的贡献之和的等差数列,然后每一行再乘上行的贡献求和即为答案. //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<vector> #include<cstdio> #include&l…
Problem A. divisor 发现x为k可表达一定可以表示成这种形式,如k=3,x=(1/3+1/2+1/6)x. 于是可以搜索k(k<=7)个1/i加起来等于1的情况,如果一个数是这些i的lcm的倍数这个数就是k可表达的. std并没有给出它的搜索程序,我的搜索写得很不优秀,所以我写搜索写了很久. 一是用double会炸精度,于是我手写了分数类. 然后是搜的时候按从大到小搜,每次会有一个上限. 这样爆搜的话可以搜出6的,要搜出7的的话,因为实际上搜的是lcm,记录一下出现过的lcm,如…
T1.Conjugate 只能选没选过的点,看成如果选了选过的堆的点就不管它继续选.如果第一次选到某一堆的点在第一次选到第一堆的点之前,这一堆对答案就会有1的贡献.那么a[i]有贡献的概率是a[i]和a[1]的相对顺序序列中,第一个是a[i]中的点的概率(转换后的游戏和原游戏等价),即ai/(a1+ai),答案就是这个东西求和再+1. //Achen #include<bits/stdc++.h> #define Formylove return 0 #define For(i,a,b) fo…
把T1题读错了,想了一个多小时发现不可做.然后打了t2,常数不优秀.然后去打t3,lct,结果打挂爆0了. 然后今天就爆炸了. 如果这是noip我今年就可以直接回去学常规了.学常规多好,多开心. 今天考完llj同学又来机房“羞辱(杯哥曰)”我这个zz,用大概5min就AK了这套题,我真是菜哭自己了.. T1锻造 这tm不是个傻逼题吗.我tm没有看到y=max(0,x-1),然后我以为要枚举y然后取min.然后我推了一推,发现是个凸壳的形式倒是可以O(n)做,问题是取摸怎么tm取min啊??我就很…