摘要:
快乐三合一。。。 阅读全文
摘要:
D1T1 - Bus 首先从后往前考虑,发现每次询问的答案只和最后乘坐的车子有关,那么答案就是到达时间 \(\le L_i\) 且终点站为 \(n\) 的车中,需要最晚出发的车。 所以设 \(f_i\) 表示需要乘坐第 \(i\) 个车的最晚出发时间,设 \(d_i\) 表示到达第 \(i\) 个点 阅读全文
摘要:
$$
c ^ {c ^ {... ^ {c ^ {a_i}}}} \pmod p
$$ 阅读全文
摘要:
A - Leading 1s 史上最阴间的 ARC A 题,全场过的人 900 个不到。。。 设 \(f_i\) 表示有 \(i\) 个前导 \(1\) 的数字的个数,发现直接求不好算,先算至少有 \(i\) 个前导 \(1\) 的数字个数,然后再容斥一下减去所有 \(f_j \ (j > i)\) 阅读全文
摘要:
C - Knot Puzzle 逆向思维,从后往前考虑,发现最终的局面必定是两个加起来大于 \(L\) 的相邻元素,只要寻找并判断这个位置是否存在即可。 int n, a[N], L; inline void solve() { Rdn(n, L); forn(i,1,n) Rdn(a[i]); i 阅读全文
摘要:
$n\le 10 ^ 7$ 线性 DP 阅读全文
摘要:
T1 - United Cows of Farmer John 先维护一下每个元素前面和后面第一个相同的位置,分别记作 \(pre_i\) 和 \(nxt_i\) 。 那么,一个区间 \([l, r]\) 满足题意的充要条件就是 \(nxt_l > r \And pre_r < l\) 。 考虑枚举 阅读全文