14名。110分。可以算是几次大落之后的一次小小的崛起??
然而sdfz的开挂选手AK了啊……
T2重测前rank7我就高兴地像个傻子??也不看看这次T1是个什么题。
实力还是不行。一眼秒掉了简单题,接下来的时间就只剩下骗分了。
T2规律还找错了。应该拿到的分数没拿到。
cnt-(n+1)/2+1的规律是错的竟然都没有发现……
T1就是在唬人,赛时估计A掉的人大概在30个左右结果只有9个??
我的实力也就这样了。顶多看破几个sb规律题。
另外,T2的解法也并不是那么难想。只是陷入了思维定势。
而且这次考试状态啥样我自己心里清楚,只能说引以为戒。
怕是和上次一综合又是倒数。
就这样了。只看晚上能不能翻盘了。
如此,继续努力下去。
以后还是要在这里放题解啊。
仔细考虑了一下,写题解根本不是给别人看的。而是帮助自己回忆一道题目,一种解题方法。
教练曰:如果一道题,做过去了,不到一个月,你忘干净了,那跟你没做没什么区别。
T1 set
规律题。题目就是在唬人。由于赛时侥幸看破了于是AC。
N个数,前缀和在%N意义下只会出现N个不同取值。即0~N-1
如果出现了0,那么该点前的所有位置即为答案。
否则必定有重复。开桶记录每个值的出现位置,出现重复输出即可。
T2 read
规律题。题目唬人++。N<=500000000然而空间限制16MB。
放弃时间。定义两个变量id和sum,分别记录当前所记录的A值和A值与其他A值数量的大小关系。
具体维护操作:对于得到的每一个A值,如果当前sum=0,id=A,sum++。
否则,如果id=A,sum++,否则sum--。
如果对于一个A值,它出现过的次数大于其他值出现过的次数之和,那么这个A值一定有一部分需要舍弃。
对于这样的A值,id=A意义下的sum一定不会小于0。
所以此时id所记录的A值有可能就是那个需要削掉一部分的A值。注意,只是有可能。
所以最后再扫一遍统计这个A值的数量,输出$max(0ll,2*sum-tot-1)$即可。
(柿子含义:$tot-sum+1$是其他书的个数,id的书最多不能大于其他书的总和。于是为$sum-(tot-sum+1)$,化简为上式)
T3 Race
(二进制神仙题。题干看得我有点晕。话说昨晚考试有大哥今天上午依旧没有理解题意??)
正解0/1trie树。
构建一棵0/1trie,将每个人的能力值插入。
考虑排名为第x时的积分贡献为$(x-1)^2$如何转化。
不难发现,(x-1)^2即为x前面的x-1个人任意取出两个的所有情况。
对于一个A[i],我们设f[i]为能力值的二进制中第i+1到M-1位都和其相等且第i位不同的数的个数。
此时决定A[i]和这些数的大小关系的在于第i位的值。
所以共有$2^{M-1}$天A[i]小于这些值。
(具体大小关系仅取决于天数在二进制下这一位是0是1,在另外$2^{m-1}$天里大小关系相反)
所以可以考虑对于每个A[i],枚举f[j]、f[k],两个值代表的元素排名均在A[i]之前的情况数为$2^{m-2}$。
又因为不考虑前后顺序问题,因此再×2。
然而这样直接枚举j和k会T掉。$m^2$查询时间上撑不住。加前缀和优化即可。