UVaLive 2995 Image Is Everything 立方体成像

题意:给你一个n阶立方体,某些单位立方体缺失(剩下部分可以不连通)。未缺失的单位立方体6个面的颜色均相同。现给出该n阶立方体的6个面的视图,求这个立方体最多可以包含多少个单位立方体。




由于n <= 10,所以我想直接暴力。当然,并不是暴力枚举每个立方体是否存在,那样的话时间复杂度将会是O(2^(n^3)),肯定TLE。我们假设这个立方体是完整的,然后规定一种操作:当前状态下依次判断每一个立方体是否符合所给出的视图。如果某个单位立方体不符合,则令该单位立方体缺失,然后重复这个操作。直到某次操作没有减少任何一个单位立方体,则剩下的就是最大可以包含的单位立方体数。判断单位立方体是否符合视图(即是否应该缺失)用如下规则:

1、若该单位立方体向6个面投影的视图中对应的位置为 '.' ,则该立方体缺失。

2、若该单位立方体向某个面投影的路径上有其他立方体存在,则该单位立方体向这个面的投影不用考虑。

3、若该单位立方体向某个面投影的路径上没有其他立方体存在,则该单位立方体的颜色必须与向这个面投影的视图的对应位置的颜色一样。否则该单位立方体缺失。

4、若该单位立方体向6个面投影均满足视图,则该单位立方体可以不缺失。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值