noip模拟32[好数学啊]】的更多相关文章

noip模拟32 solutions 真是无语子,又没上100,无奈死了 虽然我每次都觉得题很难,但是还是有好多上100的 战神都200多了,好生气啊啊啊 从题开始变难之后,我的时间分配越来越不均匀,导致每次都没有时间做最后一题 今天直接挂掉了30pts,因为最后一题没有注意部分分.. T1 smooth 这个最简单了,我考场上一秒出80pts做法,直接一波set维护 自带排序和去重,完全不必担心,就是时间复杂度多了个log 80pts.set #include<bits/stdc++.h>…
T1 Smooth 很水的一道题...可是最傻    的是考场上居然没有想到用优先队列优化... 上来开题看到这个,最一开始想,这题能用模拟短除法,再一想太慢了,就想着优化 偏偏想到线性筛然后试别的素数是不是他的因数,比较离谱当时为什么会觉得这样快... 然后还在试图精准卡时限,感觉自己像时间管理带师(??),总之就非常逗    . 后来发现这种做法不仅没有正确性(因为素数可能筛不完),而且还慢... 就放弃了直接打了一手短除,拿到除了暴零以外的全场最低$20$,长个教训吧..... 据说正解跟…
T1 smooth 考场上水个了优先队列多带个$log$,前$80$分的点跑的飞快,后面直接萎了. 其实只需开$B$个队列,每次向对应队列中插入新的光滑数,就能保证队列中的数是单调的. 为了保证不重,只往编号大的队列中加入即可. $code:$ 1 #include<bits/stdc++.h> 2 #define int long long 3 using namespace std; 4 int b,k,cnt,ans,pos; 5 int pri[21]={0,2,3,5,7,11,13…
题目描述  BG 有一块细长的蛋糕,长度为 n. 有一些人要来 BG 家里吃蛋糕, BG 把蛋糕切成了若干块(整数长度),然后分给这些人. 为了公平,每个人得到的蛋糕长度和必须相等,且必须是连续的一段. 但是, BG 并不知道要有多少人来. 他只知道, 来的人数为n的约数,且小于n. 显然把蛋糕平均分成 n 块一定能满足要求.但是, BG 想要分出的块数尽量少.现在 BG 想知道,他要把蛋糕分成至少多少块,才能使得不管多少人来都能满足要求. 输入格式 输入文件名为 cake.in. 输入共一个整…
传送门 把方差的式子拆开. 方差=平方的期望-期望的平方. 显然只用维护点对的个数和总方案数就行了. 利用分步的思想来统计. 要统计覆盖一个矩形(x1,y1,x2,y2)(x1,y1,x2,y2)(x1,y1,x2,y2)的方案数 只需要统计左上角在矩形(xmin,ymin,x1,y1)(x_{min},y_{min},x1,y1)(xmin​,ymin​,x1,y1)中,右上角在矩形(x2,y2,xmax,ymax)(x2,y2,x_{max},y_{max})(x2,y2,xmax​,yma…
我在31反思中膜拜过了B哥 没想到这次又... 我给老姚家丢脸了...STO 首先T1暴力就写挂了... 贪图从$n^3$*$2^n$优化成$n^2$*$2^n$然后打错了 哗哗的扔分 而且正解都想不到也不应该啊 为啥不努力去想想$O(K)$的柿子啊 真 是 怠 惰 T2利用了一个性质,就是如果维护$Up$和$Dn$两个数组的话 每次修改只会影响一行的答案,于是每次修改只遍历一行就行了 单调性的运用.还是不行. T3思想大概了解了,由于AC众神对题解有争议有点地方也没搞懂也不敢水过 利用期望的可…
题解 \(by\;zj\varphi\) 发现当把 \(\rm scale×cos\theta,scale×sin\theta,dx,dy\) 当作变量时只有四个,两个方程就行. 当 \(\rm n\le 500\) 时,可以选取两组进行高斯消元,解出答案后回带. 但当 \(n\) 极大时,采用随机化的做法,每次随机选取两个,这样每次选取不正确的概率为 \(\frac{3}{4}\),选取 50 次后基本就会出答案了. 记得判断 \(\rm sin\) 的正负 Code #include<bit…
题解 二维状压. 第一维直接压选不同质因子的方案,第二位压方案. 分两种讨论,显然一种方案最多出现两次,否则就不合法了,所以一种是出现了一次的,另一种是出现了两次的,这样可以减小状态数. 实现可以用 \(vector\) 或记忆化搜索. 虽然状态看起来很大,但实际可以证明不超过 \(50000\) 个. Code #include<bits/stdc++.h> #define ri register signed #define p(i) ++i namespace IO{ char buf[…
题解 \(by\;zj\varphi\) 很简单的贪心题. 开 \(B\) 个队列,每个队列存最后一次乘上的数为当前队列编号的数. 每次去所有队列中队首的最小值,不用开堆,因为开堆用于将所有数排序,但没必要. 将选出的答案只向编号比它大的队列加,因为再小的数在它自己那也能更新,这样即可去重. 别忘了 \(1\) 也算. Code #include<bits/stdc++.h> #define ri register signed #define p(i) ++i namespace IO{ c…
\(\color{white}{\mathbb{山高而青云冷,池深而蛟穴昏,行以慎步,援以轻身,名之以:落石}}\) 开题发现 \(t1\) 80分特别好写,于是先写了 但是这个做法没有任何扩展性,导致一直没有往正解的方向想 \(t3\) 看见有点的坐标,以为是计算几何,于是写完 \(t1\) 打了个暴力就看 \(t2\) 了 但事实证明 \(t2\) 的难度实际上是最大的,这次题目难度的判断又出现了严重的失误 A. Smooth 观察 B=2 的情况,发现排好序两因子的次数递增是没有规律的 可…