首页 > 其他分享 >新开的信使——比赛总结

新开的信使——比赛总结

时间:2024-01-22 22:59:26浏览次数:32  
标签:rnk 比赛 dfrac sum 枚举 新开 考虑 可以 信使

7.7

线上组队赛,队友:luomiao,305/400 pts,rnk 4/6。

  • A 题枚举保留的矩阵,坑点是 \(k=0\) 时可以不保留矩阵。
  • B 题简单构造,坑点是 \(n=1,m=1\)。
  • C 题由于最小一半,可以用随机化,可以枚举模数再随机化判断,也可以随机两个数判断差的模数;也可以利用数量的限制优化枚举,如果模数是 \(m\),则最多有 \(t=\Big\lceil\dfrac{10^5}{m}\Big\rceil\) 种不同的数值取模后相同,所以最大的一种值的个数最小为 \(\dfrac{n}{2t}\),所以只需要枚举个数大于这个数的值。考场上因为刚才式子中 \(n\) 没除以 \(2\) 分没拿完,警告。
  • D 题人类智慧构造,考场上骗了部分分。

这场考试前两题比较简单,但都有坑点,所以要注意想好整体情况后要考虑边界情况,卡你的极有可能是小数据。

7.12

线上组队赛,队友:AolinYu,5/9 题,rnk 1/6。

  • A 题结论为 \(2\) 的不在同色联通块的边界的数量次方,考场死因不明。

对思维的考察比较多,但也有纯数据结构题目。对于数据结构的题,不要说废话,不要想多,但是也不要直接硬钢。

7.15

线下赛,170/400 pts,rnk 6~7/13。

  • A 构造,但循环不好做,考虑递归去搞。赛时打了 \(n=10\) 的表,因为没有注意到 \(k\leq n\) 的限制没有得到 \(n=5,6\) 的分,构造题一定注意输出的格式和范围要求,警告。
  • B 图论,赛时想写 SPFA 骗分,结果数据过水满分了。大概思路是 Bellman-Ford 算法,记录转移的点,每轮松弛结束后寻找负环,把修改负环上的点的距离。
  • C DP。同时注意判断 \(n\) 为偶数的点。
  • D 最小生成树的应用。

7.19

线上赛,435/500 pts,rnk 2/13。

  • A 最短路计数。
  • B 通过拓扑排序转化。赛时想出了一个时间复杂度严格 \(O(n)\) 但常数巨大的做法,所以当数据范围较大时要考虑常数,用常数小的方法,少用递归,访问连续。
  • C 最小瓶颈树,跑 prim 即可。
  • D 通过差分把原询问拆成 \(4\) 个询问,也可以直接 \(4\) 维莫队。
  • E 很可爱的一道题。注意到小于 \(\sqrt {50000}\) 的质数较少,可以把每个数拥有的这些质因数压进一个 long long,然后记录剩下的最多一个质因数,就可以 \(O(1)\) 判断是否互质。同时,由于不同的出现数量是 \(O(\sqrt{n})\) 的,可以记录每个出现数量有多少次,并用链表维护出现的出现数量,就可以莫队直接维护、每个询问格外 \(O(\sqrt n)\) 计算。

7.22

现下赛,300/400,rnk 1/13.

  • A 构造,比较经典。
  • B 可以发现没有奇环的连通块的两个点的奇偶性不变,所以可以先求出多少连通块不是二分图,注意特判孤立点(不然样例为什么会有 \(4\) 个版本)。
  • C 比较套路的线段树优化 DP。
  • D 推式子。如果只考虑操作 1,考虑模 \(m\) 意义下环差分数组(即 \(a_2-a_1,a_3-a_2\dots a_1-a_n\))个数,前 \(n-1\) 个随便放,最后一个要保证总和在模 \(m\) 意义下为 \(0\),只有一种选法,则答案为 \(m^{n-1}\);如果只考虑操作 2,考虑容斥,设 \(F_d\) 为有长度为 \(d\) 的循环节方案数,\(f_d\) 为最小循环节为 \(d\) 的方案数,则 \(F_d=m^d,f_d=F_d-\sum_{d'|d,d'\neq d}f_d\),由于要去除循环同构,答案为 \(\sum_{d|n}\dfrac{f_d}{d}\);合并后,\(f\) 和答案求法不变,\(F\) 同样考虑环差分数组 \(b\),此时的要求是 \(m{\huge|}\dfrac{n}{d}\sum b\),即\(\dfrac{m}{\gcd\left(m,\frac{n}{d}\right)}{\huge|}\sum b\),所以最后一个数有 \(\gcd\left(m,\dfrac{n}{d}\right)\),所以 \(F_d=m^{d-1}\gcd\left(m,\dfrac{n}{d}\right)\)。

不要硬钢构造题。

标签:rnk,比赛,dfrac,sum,枚举,新开,考虑,可以,信使
From: https://www.cnblogs.com/recollect-the-past/p/17981297

相关文章

  • 开始新的新——比赛总结
    8.17小线下赛(小l到小n)T1:数据结构优化DP、最短路都可过,最短路可以用“前(后)缀优化建图的方式”。T2:哈夫曼树。T3:可以发现,对于两个弓箭手\(i,j\),如果\(r_i\leqr_j\),只要\(x_i-r_i\leqx_j\leqxi+r_i\),则这两个弓箭手能互相在对方的攻击范围,所以\(i,j\)能互相掩护的条......
  • 9.2 比赛总结
    E到H。T2简单树上DP。T4原题。首先将一个操作拆成两个操作,每个操作加入\((x,y,z),(x+1,y+1,z+2)\dots\)。用堆(队列也行)模拟kruskal的过程,讨论一条边之后,将它的后继加入堆。可以发现,如果一条边无法使用,则可以不加入它的后继,因为树上连接这两个点的路径上的边的边权都......
  • 9.18 比赛总结
    题目。A,B水,D随便一种算法找环,然后随便一种数据结构维护。C:两个点等价,当且仅当以两个点为根的树同构。如果存在一个点不与其它点等价,则以这个点作为根,否则一定有两个连有边的点等价,断开这条边形成两棵同构的子树。经过这步处理之后,等价的点一定在相同深度。状态采用一般的树......
  • 9.9 比赛总结
    P~S。A改成kruskal重构树或直接并查集合并,跑一个树上背包。C贪心1容易发现,从\(k\)到\(k+1\),最多有\(4\)种情况:增加一个A类。增加一个B类。减少一个A类,并增加组。减少一个B类,并增加组。如果不是这些,那\(k\)的方案不是最优的。用\(5\)个可删堆维护......
  • 9.23 比赛
    b-e。T1数据范围,小,但不能暴力枚举路径。把路径切成两半,用meetinthemiddle。注意数据范围刚好爆int。赛后assert发现并无问题T2打表找规律,本质是组合数Lucas。T3kmp建立自动机,就可以直接DP。T4类似这个链接下的E题,注意到起点和终点都是充电桩,以所有带有充电......
  • ZJC比赛
    昨天\(Huge\)说要给信奥的考场试,我以为我们仨不用考来着,一来机房,打开OJ,哦,ZJC比赛,妙啊,(话说为啥把我放在最后一个,虽然最后我考的也最烂就是了,下次一定要让他把我放在第一个T1题意:给一个字符串,第二个字符串是前一个字符串的前一半+一个字符,问1的前缀和2的后缀最多相等的个......
  • 比赛必备——codeforces better 和 atcoder better 的安装教程
    大家有没有像我一样英语不太好然后又想要打cf和atc的呢?(可能全世界就我英语不好)这里有两个强力的工具可以帮助我们解决这一问题——codeforcesbetter和atcoderbetter。由于我只用的是edge,所以下面默认为edge浏览器篡改猴首先我们需要安装篡改猴,link。codeforcesbe......
  • 比赛日程问题
    问题描述:1.设有n(n为任意值)个选手进行循环赛,手工设计一个满足以下要求的比赛日程表:(1)每个选手必须与其他n-1个选手各赛一次;(2)每个选手一天只能赛一次;(3)循环赛一共进行n-1天。算法设计:假设有N名选手参赛,不妨构造一个N×N的矩阵。在矩阵第一行填充1,2,…,N,第一列填充1,2,…......
  • 【比赛记录】国庆集训合集
    联赛组国庆训练1\(\text{T1}\)GirlFriend区间3好题。先把质数筛了。考虑将所有区间按照左右端点离散化。将询问离线下来,然后对于每个右端点统计左端点上的贡献。即从小到大扫描\(r\),维护每一个后缀的答案。考虑使用set维护区间的并。考虑已处理前\(r-1\)的询问,处......
  • Python中避免循环失败后重新开始的技巧
    在Python中,循环是非常常见且重要的编程语言结构。但是,在循环中出现错误或异常时,程序将会停止并从头开始执行,这可能会导致浪费时间和资源。为了避免这种情况的发生,我们可以使用异常处理技术来捕获错误并处理它们。下面是一些实用的技巧来帮助你在Python中避免循环失败后重新开始的问......