a6

HGOI 20191106 题解

廉价感情. 提交于 2019-12-03 17:17:06
HGOI20191106 Solution Problem A 旅行者 有$n$种转移装置,每种转移装置本质相同,每种装置可以前进$a_i$单位,但只有$b_i$个。 从初始坐标为$0$出发,途中不能经过$c_1,c2,...,c_m$中的任意一个点。 走到$\sum\limits_{i = 1}^n a_ib_i$位置的方案数$mod 10^9 + 7$的值。 对于$100\%$的数据满足$1 \leq n \leq 6 , 1 \leq m \leq 10^5 ,0<c_i < \sum\limits_{i = 1}^n a_ib_i$   Solution :     由于每个装置本质相同,那么我们只需要记录当前使用的转移装置数作为状态即可。     这样定义状态的总状态数时$\prod_{i = 1}^n b_i \leq 13^6 = 4826809$     注意,由于有$m$点不能走,还需要开一个$hash$存当前值能不能走,特殊判掉即可。     转移的时候枚举当前通过那个转移装置走到当前位置,转移时间复杂度为$O(n)$     请注意,本题的模数为$10^8 + 7$,您是否数错了零?     所以,本题的总时间复杂度是$O(n\prod\limits_{i=1}^{n} b_i)$ # pragma GCC optimize(3) # include<bits