NOIP20240805
NOIP20240805
T1 解方程
-
题意:给定非负整数 \(n\),需要找到两个正整数 \(x\) 和 \(y\),使得 \(x^2 - y^2 = n\)。
-
题解:由题可知 \((x+y)(x−y)=n\),可以得出:\(x+y\) 与 \(x−y\) 奇偶性相同。
于是,可以将 \(n\) 的奇偶性进行划分:
-
\(n\) 为奇数,
当 \((x+y),(x−y)\) 各为 \(1,n\) 时成立。
-
\(n\) 为偶数,\(x=n\div2\),
若 \(x\) 为奇数为
No
(无法划分成奇偶性相同的两块);若 \(x\) 为偶数则为
Yes
。
注意:当 \(n=0,1,4\) 时需要特判!
队测时 \(n\) 是自然数,不需要特判 \(n=1,4\)。
T2 超速
- 题意:有 \(n\) 条道路,每段公路的长度 \(l_i\),限速是 \(v_i\),超速就要按照规定罚款,不同的超速程度有不同金额的罚款,每一辆车从 \(s_i\) 的时刻开始行驶,\(t_i\) 的时刻离开该条公路,求最小的最大罚款金额。
- 题解
- 代码
T3 业绩评比
- 题意:给出序列 \(a\),定义 \(S_i\) 为连续 \(d\) 个不同的 \(a_i\) 数量之和,求 \(S_{1\sim n}\)。
- 题解:差分好题
每一种数字单独处理。假设该数字出现情况形如.... x....x.....x....
。把每一个....
的长度取出来,假设为 \(L\)。那么 \(1\) 的答案就要减去 \(L\),\(2\) 的要减去 \(L−1\dots\dots\)随后进行模拟即可。 - 代码
T4 Umamusume 不会
T5 Mr. Liang play Card Game
- 题意:有 \(n\) 张卡牌,按顺序排列。每张卡牌有一个类型和一个初始等级 \(1\)。每种类型的卡牌有一个固定的基础收益值 \(V_i\)。你可以选择打出卡牌,获得相应的收益。收益公式为:等级为 \(k\) 的卡牌的收益 \(= V_i\times P^{k-1}\)。你可以选择将两张相邻的同类型、同等级的卡牌合并,提升等级(等级上限为 \(R\))。请通过打出和合并卡牌,获得最大的总收益。
- 题解:区间
dp
好题。考虑用一个四维数组来表示状态 \(f_{l,r,a,b}\) 表示在 \([l,r]\) 这个区间,最后剩一张编号为 a,等级为 \(b\) 的一张牌。\(g_{l,r}\) 表示 \([i,j]\) 这个区间,最后没有剩下任何牌的最大价值。那么我们就有三种转移
\[ \large f_{l,r,a,b}=\max(f_{l,r,a,b}, f_{l,k,a,b}+g_{k+1,r}, f_{k+1,r,a,b} + g_{l,k}, f_{l,k,a,b-1}+f_{k+1,r,a,b-1})
\]
\[ \large g_{l,r} = \max(g_{l,r}, f_{l,r,a,b} + val)
\]