题目名称 2672. [HAOI 2017]方案数
输入输出 problema.in/out
难度等级 ★★★
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 10
题目来源 Gravatarmouse 于2017-04-25加入
开放分组 全部用户
提交状态
分类标签
HAOI 贪心 容斥原理 动态规划
分享题解
通过:15, 提交:57, 通过率:26.32%
GravatarFoolMike 100 0.108 s 9.73 MiB C++
Gravatarwrz91win 100 0.133 s 9.27 MiB C++
Gravatar__ 100 1.507 s 2.38 MiB C++
Gravatar梦那边的美好ET 100 3.051 s 5.22 MiB C++
Gravatarpα.Princesavs 100 3.176 s 5.86 MiB C++
GravatarFoolMike 100 3.193 s 5.83 MiB C++
GravatarAyaya 100 3.211 s 2.44 MiB C++
GravatarImone NOI2018Au 100 3.742 s 1.81 MiB C++
GravatarImone NOI2018Au 100 3.842 s 1.78 MiB C++
Gravatarpb0207 100 4.612 s 9.53 MiB C++
关于 方案数 的近10条评论(全部评论)
...考试的时候咋没想到累5orz
Gravatarpα.Princesavs
2017-05-09 16:02 3楼
大力猜测出题人傻逼到数据纯随机自然是实力的一部分啊,当成无障碍做自然是实力进队啊
GravatarCydiater
2017-05-04 14:18 2楼
还是辣鸡官方数据!?
GravatarFoolMike
2017-04-26 12:53 1楼

2672. [HAOI 2017]方案数

★★★   输入文件:problema.in   输出文件:problema.out   简单对比
时间限制:1 s   内存限制:256 MiB

【题目描述】

考虑定义非负整数间的“$\subseteq$”,如果 $a\subseteq b$,那么 $a \land b = a$,其中 $\land$ 表示二进制下的“与”操作。

考虑现在有一个无限大的空间,现在你在 $(0,0,0)$,有三种位移操作。

一、$(x,y,z)\to(x',y,z)$ if $x\subseteq x'$

二、$(x,y,z)\to(x,y',z)$ if $y\subseteq y'$

三、$(x,y,z)\to(x,y,z')$ if $z\subseteq z'$

由于来自东方的神秘力量,有些点被屏蔽了,也就是不能经过了。现在问你到某个点 $(n,m,r)$ 的方案数,答案对 $998244353$ 取模。

【输入格式】

第一行三个整数 $n,m,r$。

接下来一行一个整数$o$,表示障碍物的数量。

接下来 $o$ 行,每行三个整数 $x,y,z$ 表示障碍物的坐标,$0\leq x\leq n,0\leq y\leq m,0\leq z\leq r$,且障碍物不在 $(0,0,0)$ 和 $(n,m,r)$ 上,障碍物不会重复。

【输出格式】

一行一个整数,代表要求的答案。

【样例输入】

1 1 1
0

【样例输出】

6 

【样例解释】

有8种状态(0,0,0),(0,0,1),(0,1,0),(0,1,1),(1,0,0),(1,0,1),(1,1,0),(1,1,1),分别方案数为 1,1,1,2,1,2,2,6。

【数据规模喝约定】

对于 20% 的数据,满足:$n, m, r \leq 100$

对于 50% 的数据,满足:$n, m, r \leq 10^6$

对于另外 20% 的数据,满足:$o \leq 10$

对于 100% 的数据,满足:$n, m, r \le 10^{18}, o \le 10^4$

【来源】

HAOI 2017