上下午 6 题一起考
自闭了
T1
小明要参加一场比赛,赛制给你一个表格 $p$ ,$p_{(i,j)}$ 表示他在第 $i$ 场比赛前如果输了 $j$ 场,他这一场赢的概率,他也可以故意输掉任意多场比赛,求他 $n$ 场比赛后他的最优期望胜场
$n leq 1000$
sol:
一道很鸡汤的题,首先我们可以搞一个 dp ,$f_{(i,j)}$ 表示第 $i - 1$ 场比赛后,前 $i - 1$ 场一共赢了 $j$ 场,第 $i$ 场赢的概率
转移的时候枚举这次比赛赢了还是输了,然后还要多加一个“故意输”的整行转移
但会发现...最优的情况就是不故意输
T2
$n$ 个物品,$x$ 块钱,你要买一些物品,求最少剩多少钱
$n leq 40$
$x leq 10^9$
sol:
折半搜索裸题,先搜前 20 个哈希起来,再搜后 20 个看看最少能多少
T3
一个 $w imes h$ 的棋盘,告诉你 $n$ 个子矩形的最大值,并告诉你整张棋盘所有数不超过 $m$,求有多少不同的棋盘,膜 $10^9 + 7$
$n leq 10 space space space w,h leq 400$
sol:
不相交的情况很好做,相交而且数不相同的情况也很好做,相交而且数相同的话记一下交了多少点然后状压 dp 就可以了
但 wxj 用扫描线过掉了。。。
T4
一棵带边权的树上有一个点 $s$ ,$q$ 次询问 $a$ 到 $b$ 的最小代价,每组询问你可以从 $s$ 沿最短路径走到任意一个点,把路上的边权为 $0$,再算最小代价,询问独立
sol:
首先可以想到,可以把 $s$ 当做根避免分类讨论...
卧槽我两个小时没想出来
然后倍增维护一下最小前缀和就可以了
T5
爆搜
T6
每次会给一个点到根染色,染色完求每个点被染过多少不同的颜色(假设颜色不会互相覆盖)
sol:
离线,把同色的询问排在一起,同色的询问相当于一个链并
链并的话...我们按 dfs 序排序,相邻两个点一组,u -> 1 v -> 1 lca -> -1
然后就是一个链加,所有链加之后单点询问
然后用各种数据结构维护一下就可以了
考场上不要虚啊....
相信 noip 是很简单的
嗯 加油