E. Two Teams
题意
一个 $1\sim n$ 的排列, 从大到小删数, 当删一个数时将其左右的 $k$ 个数也删了, 若某个数是第奇数次删的输出 1, 否则输出 2
题解
维护两个数组 $l[i],r[i] $ 分别表示第 $i$ 个数左边, 右边的数所在的地方
代码
1 |
|
F. Shovels Shop
题意
$n$ 个物品, 其价格分别为 $a_i$ , 有 $m$ 种折扣, 买 $x_i$ 件物品, 便宜的 $y_i$ 件免费, 买 $k(\le 2000)$ 件的最小花费
题解
$dp[i]$ 表示买 $i$ 件物品的最小花费
$dp[i]=min(dp[i-1]+a[i],dp[i-j]+pre[i]-pre[ i-cost[j] ])$
$cost[i]$ 表示买 $i$ 件物品最小需要支付的物品数
代码
1 |
|
G. Minimum Possible LCM
题意
给 $n(2\le n \le 1e6)$ 个数, 求最大的 $lcm(a_i,a_j) (1\le a_i\le 1e7)$
题解
枚举 $gcd(a_i,a_j)$ , 找到最小的 $a_i, a_j$
时间复杂度 $O(\frac {10^7}1+\frac {10^7}2+\frac {10^7}3+\cdots+\frac {10^7}{10^7})\approx O(10^7log(10^7))$
代码
1 |
|