【GDOI 2016模拟3.16】装饰
来源:互联网 发布:landesk软件下载 编辑:程序博客网 时间:2024/05/22 13:27
题目描述
以以下规则,用红蓝绿三种颜色填充一个
- 相邻的格子颜色不能相同。有公共边的格子就被视为是相邻的了。
- 每个
2×2 的格子内,每种颜色都至少要出现一次。
答案对
分析
首先这个约束是非常紧的。
考虑将它取反,也就是说求出每一列没出现的颜色,排成一行,对应的每种颜色
那么两行的信息,就可以通过这一列反色的信息,以及两行开头一列的排列顺序确定下来。
对应的,因为
那么我们先填充开头的颜色,记它的数量为
其中有一部分是奇数的,一部分是偶数的。
枚举一下有多少段是奇数的,记为
首先剩下两种颜色的数量不妨记为
首先
那么剩下的
那么剩下的
最后的最后,因为偶数段无论是两者谁开头都可以,所以还要再乘上一个
至此,问题就基本解决了。
时间复杂度
空间复杂度
0 0
- 【GDOI 2016模拟3.16】装饰
- GDOI模拟 装饰
- 【GDOI 2016模拟3.16】图计数
- 【GDOI 2016 12.19模拟】总结
- 【GDOI 2016模拟3.14】garrafeira
- 【GDOI 2016模拟4.23】闷声
- 【GDOI 2016模拟4.21】位运算
- 2016.4.23 GDOI 2016 赛前模拟 总结
- GDOI 3.21 模拟总结
- 【GDOI】模拟8.1总结
- 【GDOI】模拟8.2总结
- 【GDOI】模拟8.3总结
- GDOI模拟8.1
- 【GDOI 2013模拟】屏保
- GDOI模拟 20150806
- GDOI模拟8.6总结
- GDOI模拟8.7总结
- 【GDOI 2013模拟】Processer
- CLR----公共语言运行时
- Linux内核CFS调度器
- Android源码编译整理总结
- VMware 12中安装CentOS7的相关问题(持续更新)
- Litepal使用心得之建立数据之间的联系
- 【GDOI 2016模拟3.16】装饰
- Http client
- MFC中分割字符串
- 局部敏感哈希matlab代码解读
- Android 6.0新特性
- 深入分析java.util.concurrent并发包下的CountDownLatch.java
- Java多线程用法解析
- android-studio下ndk的配置和简单JNI调用遇到的问题
- Debain 错误 "Could not apply changes! Fix broken packages first."