这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
2020-2021:teams:mian:nowcoder_training:2020_multi-university_training_contest_4 [2020/07/20 23:04] grapelemonade [F] |
2020-2021:teams:mian:nowcoder_training:2020_multi-university_training_contest_4 [2020/07/23 23:31] (当前版本) withinlover [Comments] |
||
---|---|---|---|
行 1: | 行 1: | ||
- | ====== 2020牛客暑期多校训练营(第三场) ====== | + | ====== 2020牛客暑期多校训练营(第四场) ====== |
===== Results ===== | ===== Results ===== | ||
行 5: | 行 5: | ||
==== Summary ==== | ==== Summary ==== | ||
- | * Solved 7 out of 12 problems | + | * Solved 5 out of 10 problems |
- | * Rank 96/1178 in official records | + | * Rank 28/1159 in official records |
- | * Solved 8 out of 12 afterwards | + | * Solved 5 out of 10 afterwards |
==== Virtual Participation ==== | ==== Virtual Participation ==== | ||
行 29: | 行 29: | ||
^ Solved ^ A ^ B ^ C ^ D ^ E ^ F ^ G ^ H ^ I ^ J ^ | ^ Solved ^ A ^ B ^ C ^ D ^ E ^ F ^ G ^ H ^ I ^ J ^ | ||
- | | Pantw | | | | | | √ | | √ | √ | | | + | | Pantw | | | | - | | √ | | √ | √ | | |
- | | Withinlover | | √ | | | | | | | | | | + | | Withinlover | | √ | | - | | | | | | | |
| Gary | | | √ | | | | | | | | | | Gary | | | √ | | | | | | | | | ||
行 43: | 行 43: | ||
===== B ===== | ===== B ===== | ||
+ | |||
+ | 简单推导一下,发现最多可以乘约束个数次。预处理出所有数字最小的质因子然后$O(\log n)$的计算就可以了 | ||
===== C ===== | ===== C ===== | ||
+ | |||
+ | 统计变形后的所有子串个数,所有后缀变形后的子串即为所求,后缀的从右至左每次改变的次数不并不多且只改变连续的几位,对所有后缀变形后的串建SAM,记录每个位置结尾的串在SAM中的节点,每次改变跳回到对应的节点,统计即为所有节点$ans=\sum_{\forall i\in SAM}lenth[i]-lenth[parent[i]]$; | ||
===== D ===== | ===== D ===== | ||
+ | |||
+ | 将数字拆成一位数会得到最大值≤9; | ||
+ | |||
+ | 若最优结果的各数字位数相同,只需要对n的所有约数长度的答案进行判断; | ||
+ | |||
+ | 若位数不同,则一定存在1000x形式的数字,在串中找出满足条件的最长串,因为最大值≤9,符合条件的串一定为999x和1000x的形式,暴力匹配即可 | ||
===== E ===== | ===== E ===== | ||
行 57: | 行 67: | ||
===== H ===== | ===== H ===== | ||
+ | 从大到小枚举质数 p,每次拿出未匹配的 p 的倍数,把这些数按照最小质因子从大到小排序,然后直接从头两个两个选。 | ||
===== I ===== | ===== I ===== | ||
+ | 读题发现错误率最高 5%,那么我们直接枚举当前未匹配的第一个点,拎出其所有邻接点,判断所有未匹配点到拎出来的点集中的点的连边数,设置一下允许浮动范围,迭代两次。最后全局重判一下,根据字典序调整一下标号,就卡过去了。 | ||
===== J ===== | ===== J ===== | ||
行 71: | 行 83: | ||
- 调参的时候要冷静合理调参,不要太莽(I) | - 调参的时候要冷静合理调参,不要太莽(I) | ||
+ | Gary: | ||
+ | - 不盲目跟榜(E) | ||
+ | - 有思路尽快分享讨论,码不出来浪费很多时间(D) | ||
+ | Withinlover: | ||
+ | - 习惯改好点,别用cin, cout(B) | ||
+ | - 想好了再写,写了一半在改很花时间(D) |