CodeChef Starters 123 记录

好困zzz


Algomaniac Finals

题目传送门

输入 \(N\),检查 \(N\) 是否为 \(17\)

wow python 3

print("YAY" if input()=="17" else "NO")

Room Allocation

题目传送门

因为每个房间内只能有同一个大学的成员,所以对于大学 \(i\) ,需要的房间数为 \(\left\lceil\dfrac{A_{i}}{2}\right\rceil\)。可得答案为 \(\begin{aligned}\sum_{i=0}^{N}{\left\lceil\dfrac{A_{i}}{2}\right\rceil}\end{aligned}\)


Maximise Adjacent Sum

题目传送门

推一推式子

\(\begin{aligned} f(A) &= \sum_{i=1}^{N-1}{(A_{i}+A_{i+1})}\\ &= \sum_{i=1}^{N-1}{A_{i}}+\sum_{i=1}^{N-1}{A_{i+1}}\\ &= \sum_{i=1}^{N-1}{A_{i}}+\sum_{i=2}^{N}{A_{i}}\\ &= \sum_{i=1}^{N}{A_{i}}-A_{N}+\sum_{i=1}^{N}{A_{i}}+A_{1}\\ &= 2\left(\sum_{i=1}^{N}{A_{i}}\right)-(A_{1}+A_{N}) \end{aligned}\)

此时当 \(A_{1}+A_{N}\) 最小,\(f(A)\) 最大。所以我们取 \(A_{1}\), \(A_{N}\) 为数组 \(A\) 里最小的两个值,便可得答案。


Check Adjacent Sum

题目传送门

用回上一题的思路。如果存在排列满足 \(f(A)=2\left(\sum\limits_{i=1}^{N}{A_{i}}\right)-x\),那么必定存在 \(i\), \(j\) 满足 \(A_{i}+A_{j}=x\)

只需在输入询问前用 map 记录所有 \(A_{i}+A_{j}\)\(i \neq j\))的出现次数,然后对每次的查询 \(X\) 检查 \(X\) 是否在 map 里的值不为 \(0\)即可。

总时间复杂度:\(O(N^2+QN)\)

\(Q \le 50\)\(N \le 50\),可以通过。


Minimum And Maximum I

题目传送门

打表题


Minimum And Maximum II

题目传送门

打表题2

因为都是打表过的所以不给出证明qwq


Yet Another Alice Bob Game

题目传送门

以前玩过这个游戏www

\(A>B\),不管 Bob 怎么玩都会输。

  • 如果 \(N \le A\),Alice 会在第一轮赢下游戏。
  • 如果 \(N>A\),Alice 只需每一轮都拿一块石子,直到石子数量 \(\le A\)。Bob 不可能在这之前获胜,考虑两种情况
    1. Alice 拿了一块石子后,石子数量 \(=A\)。此时 Bob 能取出的石子数量最大为 \(B\),可是 \(B<A\),所以 Bob 无法获胜。
    2. Bob 拿了 \([1,B]\) 块石子使得石子数量 \(\le A\)。此时 Alice 只需拿完剩下的石头便可获胜。

\(A<B\),和上面相反,Alice 会输掉游戏。除了当 \(N \le A\) 时,Alice 可以在第一轮获胜。

\(A=B\),就变成了 ”抢21“ 游戏 (Counting to 21)。下面 ”拿“ 指的是那一轮所拿的最后一块石子。

  1. 如果你想拿石子 \(1\)(石子数量 \([1,A]\)
  2. 就要让对手拿到石子 \([2,A+1]\)(石子数量 \(A+1\)
  3. 那你需要拿石子 \(A+2\)(石子数量 \([A+2,2A+1]\)
  4. 就要对手要拿到石子 \([A+3,2A+2]\)(石子数量 \(2A+2\)
  5. 那你需要拿石子 \(2A+3\)(石子数量 \([2A+3,3A+2]\)\(\\\vdots\)

以此类推。

所以当 \(N \not\equiv 0 \pmod{A+1}\),Alice 总有办法在第一轮把下一轮的石子数量变为 \(k(A+1)\),赢下游戏。相反当 \(N \equiv 0 \pmod{A+1}\),Bob 获胜。


赛时就做到这题qwq

如果之后有补题会更 ₍ᐢ> ̫<ᐢ₎

话说 URL 3mog1sum www

posted @ 2024-02-29 02:04  lumid  阅读(23)  评论(0)    收藏  举报  来源