大意

给定长度为 $n$ 的系数数组 $a_i$ $l,r$ ,求出长度为 $n$ 的数组 $x_i(x_i\in\mathbb{N})$ 使得:

$$l\leq \sum_{i=1}^na_ix_i\leq r $$

$x_i$ 数组有多少个。

$n\leq 12,1\leq l\leq r\leq 9\times10^{11},1\leq a_i\leq5\times10^5$

分析

本题很巧妙。令 $m=\min\{a_i\}$ ,然后对于所有的 $x_i$ 都可以根据 $\sum_{i=1}^na_ix_i$ $m$ 的余数归为一类。把每一类作为一个节点,每个节点向它的值加上一个 $a_i$ 的那一类连边权为 $a_i$ 的线。然后求最短路, $\mathrm{distance}(u)$ 就表示结点 $u$ 所代表的类的最小值。

这个模型很酷炫,记记。

EOF

评论

暂无评论

发表评论

可以用@mike来提到mike这个用户,mike会被高亮显示。如果你真的想打“@”这个字符,请用“@@”。

博客信息

作者
Jayun
时间
2022-11-25 16:58:52
博客类型
标签