总结: 第一题gcd水题,不开long long见祖宗 第二题求逆序对,看不出来 第三题暴力都不会 总分30+0+0=30 真的是垃圾 原文地址:https://www.cnblogs.com/LJB666/p/10885381.html
T1:string 第一眼秒出思路,这不就是排序那道题的加强版吗? 然而歪?解复杂度虽然是对的,但常数过大,竟被卡到70 歪?解:(实际上std写的就是这个,但据说std被卡掉了 OAO) 因为字符集很小,所以我们可以把区间排序改为区间查询和覆盖 即:先查询区间内所有字符的个数,再从左端点开始按照大小关系依次将长度为字符个数的区间修改为该字符. 期望复杂度O ( 26*mlogn ),实际复杂度O ( 26*mlogn*(巨大的常数) ) 所以需要一(feng)定(kuang)的卡常 正?解:
T1:折纸 这道写崩我也是没话说…… 模拟就完了,记录每次的折叠点,每次将之前的都扫一遍就完了 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #include<cmath> 5 #include<algorithm> 6 #include<cstdlib> 7 #define ll long long 8 using namespace std; 9 con
T1:给出n个正整数a1,a2…an和一个质数mod.一个变量x初始为1. 进行m次操作.每次在n个数中随机选一个ai,然后x=x∗ai.问m次操作之后x的取值的期望. (1<=ai<mod mod为质数 1<=mod<=1000 1<=n<=105 , 1<=m<=109) 第一眼康上去感觉是个数论加期望,完全不想做,想想后发现是个假期望,但好像是真数论,还是不想做 于是直接跳过,最后也没什么思路,打了个n×m×mod的暴力,然后喜暴 0
这个起名方式居然还有后续?! 为什么起名不是连续的?! T1想了半天,搞出来了,结果数组开小[其实是没注意范围].T2概率期望直接跳,后来翻回来写发现自己整个理解错了期望的含义[何].T3错误想到赛道修建结果来了个错误贪心. 关于T2破罐子破摔输出k居然骗了二十分这件事…… T1u: 一开始各种想偏,维护哪种值是奇数或偶数个,考虑每次操作影响哪些值变化…这些全都跑出来了. 大概过了一个世纪那么长,突然想着能不能直接优化操作的过程啊,然后对暴力进行钻研,终于开始想到差分. 然后觉着nq的复杂度过不
咕咕咕的冲动如此强烈x T1x: 看完题目想了想,感觉把gcd不为1的强行放在一组,看作一个连通块,最后考虑连通块之间的组合方式就可以了. 然后维护这个连通块可以写并查集可以连边跑dfs怎么着都行… 然而我在处理数字分解质因数这里T掉了,原因是一个很显然的优化写法我基本没怎么写过.线性筛的时候记录每个数是被哪个质数标记过的,分解一个数的时候直接处理记录下来的质数就可以. #include<iostream> #include<cstdio> #include<cmath>
头一次做图巨的模拟题OWO 自从上一次听图巨讲课然后骗了小礼物以后一直对图巨印象挺好的233 T1: 对于XY取对数=Y*log(x) 对于Y!取对数=log(1*2*3*...*Y)=log1+log2+log3+...+logY 因为数字大小不超过1e5,直接累加最后比较就可以了 #include<iostream> #include<cstdio> #include<cmath> using namespace std; int t,x,y; double a,b
35+60+8 T1暴力,没有想到二维前缀和搞了个四维数组硬刚没敢开大,开大没有MLE多了15分; T2贪心正解,然而没开两倍边,dfs时候sd的只压了叶子?60->75->100 T3 rand数... 不行啊,差距太大了,时间分配不均,思维太傻,,,T1一点感觉没有,T2想了将近1个小时多,而且暴力打的慢,T1暴力打了将近一个小时......T3想打状压来着的,权衡一下24没有T1多... 思维 考试 心态 时间 考试状态并不是特别好,顾虑太多,感觉想不到正解又不愿意放弃,就在这种矛
其实这是道很难的容斥. 所以我考场上直接考虑了\(m=0\)的暴力和白给的\(m=\cfrac{n(n-1)}{2}\)的\(10\)分. 白给的那十分是完全图,根据题意就只需要输出\(0\)就行了. 而至于\(m=0\)的\(40pts\),稍加思索就会发现它和错排是双射关系... 于是,就直接错排就好了. 但我当时忘了错排公式是什么了...递推式也没想起来... 于是我就妄想手推容斥形式的错排,但是我死了,没推出来. 于是我就\(10pts\)走人了. 后来在\(wqy\)的指导下推了出来,