摘要:
Problem \(n\) 个数,每个数为 \(a_i\),有 \(Q\) 次询问,每次询问 \([l,r]\),求 \(LCM_{i=l}^r a_i\)。总共 \(T\) 组数据。 数据范围:\(1\leq n, Q, T\leq 300\), \(1\leq a_i\leq 2^{60}\)。 阅读全文
摘要:
推导 \(f(c^i)=\sum_{j=0}^{n-1}a_jc^{ij}\) \(ij={i+j\choose 2}-{i\choose 2}-{j\choose 2}\) \[ \begin{aligned} f(c^i)&=\sum_{j=0}^{n-1}a_jc^{{i+j\choose 2 阅读全文
摘要:
Solution 这题是博主写的第一道交互题,在此 mark 一下。 首先假设我们已经知道有若干蘑菇属于 A(或者 B),这里举例 A 的情况。构造 \(A,\_,A,\_,\cdots,\_,A,x\) 可以查询出序列中下划线里含有多少个 B,以及可以根据奇偶性知道 \(x\) 属于 A 或者 B 阅读全文
摘要:
整体二分+二维数状数组。复杂度 \(\mathcal O((n^2+Q)\log^3n)\)。 或者不使用二维数状数组,整体二分里面,采用扫描线将修改和询问一起做,这样复杂度可以消去一个 \(\log\)。 #include <bits/stdc++.h> using std::sort; usin 阅读全文
摘要:
(扰动法) \[ \begin{aligned} &S(k,n)\\ =&\sum_{i=1}^ni^ka^i\\ =&\sum_{i=1}^n(i+1)^ka^{i+1}-(n+1)^ka^{n+1}+a\\ =&\sum_{i=1}^n\sum_{j=0}^k{k\choose j}i^ja^{ 阅读全文
摘要:
以前写过一份 Day2 的。 这套题难度很大。当年赛场上貌似得分率不高。 寻宝游戏 把 \(\vee\) 和 \(\land\) 看成 0/1,与原序列对比发现变成答案中的 0/1 等价于比较数字的大小。最后排序即可。 #include <bits/stdc++.h> using std::sort 阅读全文
摘要:
Problem 给定一个长度为 \(n\) 的序列 \(A\),每次给定四个数 \(l,r,a,b\),查询 \([l,r]\) 内值域在 \([a,b]\) 内: 1、数的个数; 2、不同的数的个数。 Solution 问题 2 可以转化成三维偏序。这题用来练手基础数据结构。 扫描线+树套树 时间 阅读全文
摘要:
Problem 您需要写一种数据结构,来维护一个有序数列,其中需要提供以下操作: 1、查询 \(k\) 在区间内的排名 2、查询区间内排名为 \(k\) 的值 3、修改某一位值上的数值 4、查询 \(k\) 在区间内的前驱(前驱定义为严格小于 \(x\),且最大的数,若不存在输出 \(-214748 阅读全文
摘要:
Problem 问题 0:已知两棵 \(n\) 个节点的树的形态(两棵树的节点标号均为 \(1\) 至 \(n\)),其中第一棵树是红树,第二棵树是蓝树。要给予每个节点一个$[1,y]$中的整数,使得对于任意两个节点 \(p,q\),如果存在一条路径 \((a_1=p,a_2,\cdots,a_m= 阅读全文
摘要:
一个优美的恒等式 \(\sum_{i+j+k=n}{i+j\choose i}{j+k\choose j}{k+i\choose k}=\sum_{r=0}^n{2r\choose r}\) 证明 本证明由三人合作完成,博主觉得非常优美,于是放在了这里。 证明硬拆右式行不通,考虑构造。 对于 \({ 阅读全文