HDU 5613 Baby Ming and Binary image
因为第一行和最后一行都是0,我们只需枚举最左边或最右边一列的01情况,即可得到整张表
然后再检验表是否符合要求
#include<cstdio>
#include<cstring>
#include<vector>
#include<cmath>
#include<queue>
#include<list>
#include<algorithm>
using namespace std; int T;
int n,m;
int a[][],ans[][],pri[][];
int b[];
int num;
int Y; bool f(int x,int y)
{
if(x>=&&x<n&&y>=&&y<m) return ;
return ;
} int getSum(int i,int j)
{
int res=;
if(f(i-,j-)) res=res+ans[i-][j-];
if(f(i-,j)) res=res+ans[i-][j];
if(f(i-,j+)) res=res+ans[i-][j+];
if(f(i,j-)) res=res+ans[i][j-];
if(f(i,j)) res=res+ans[i][j];
if(f(i,j+)) res=res+ans[i][j+];
if(f(i+,j-)) res=res+ans[i+][j-];
if(f(i+,j)) res=res+ans[i+][j];
if(f(i+,j+)) res=res+ans[i+][j+];
return res;
} void dfs(int tot)
{
if(tot==n-)
{
bool fail=; //填表
memset(ans,,sizeof ans);
for(int i=;i<m;i++) ans[][i]=,ans[n-][i]=;
for(int i=;i<=n-;i++) ans[i][]=b[i-];
for(int j=;j<=m-;j++)
for(int i=;i<=n-;i++)
ans[i][j]=a[i-][j-]-getSum(i-,j-); //填完检查
for(int i=;i<n;i++)
{
for(int j=;j<m;j++)
{
if(a[i][j]!=getSum(i,j)) fail=;
if(ans[i][j]!=&&ans[i][j]!=) fail=;
}
} if(fail==)
{
num++;
if(num==) Y=;
else if(num==)
{
for(int i=;i<n;i++)
for(int j=;j<m;j++)
pri[i][j]=ans[i][j];
}
}
return;
} b[tot]=;
dfs(tot+); if(Y) return;
b[tot]=;
dfs(tot+); if(Y) return;
} int main()
{
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&n,&m);
for(int i=;i<n;i++)
for(int j=;j<m;j++)
scanf("%d",&a[i][j]);
if(m==)
{
printf("Impossible\n");
continue;
}
num=;Y=;
dfs();
if(Y==) printf("Multiple\n");
else if(num==)
{
for(int i=;i<n;i++)
{
for(int j=;j<m;j++)
{
printf("%d",pri[i][j]);
if(j<m-) printf(" ");
else printf("\n");
}
}
}
else printf("Impossible\n");
}
return ;
}
HDU 5613 Baby Ming and Binary image的更多相关文章
- hdu 5612 Baby Ming and Matrix games
Baby Ming and Matrix games 题意: 给一个矩形,两个0~9的数字之间隔一个数学运算符(‘+’,’-‘,’*’,’/’),其中’/’表示分数除,再给一个目标的值,问是否存在从一 ...
- hdu 5612 Baby Ming and Matrix games(dfs暴力)
Problem Description These few days, Baby Ming is addicted to playing a matrix game. Given a n∗m matr ...
- hdu 5611 Baby Ming and phone number(模拟)
Problem Description Baby Ming collected lots of cell phone numbers, and he wants to sell them for mo ...
- hdu 5610 Baby Ming and Weight lifting
Problem Description Baby Ming is fond of weight lifting. He has a barbell pole(the weight of which c ...
- HDU 5612 Baby Ming and Matrix games(DFS)
题目链接 题解:题意为给出一个N*M的矩阵,然后(i∗2,j∗2) (i,j=0,1,2...)的点处是数字,两个数字之间是符号,其他位置是‘#’号. 但不知道是理解的问题还是题目描述的问题,数据中还 ...
- HDU 5611 Baby Ming and phone number
#include<cstdio> #include<cstring> #include<vector> #include<cmath> #include ...
- HDU 5614 Baby Ming and Matrix tree 树链剖分
题意: 给出一棵树,每个顶点上有个\(2 \times 2\)的矩阵,矩阵有两种操作: 顺时针旋转90°,花费是2 将一种矩阵替换为另一种矩阵,花费是10 树上有一种操作,将一条路经上的所有矩阵都变为 ...
- BestCoder Round #69 (div.2) Baby Ming and Weight lifting(hdu 5610)
Baby Ming and Weight lifting Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K ( ...
- Baby Ming and Matrix games(dfs计算表达式)
Baby Ming and Matrix games Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Ja ...
随机推荐
- usb-to-isp-for-stm32
- Guava API
1.字符串的处理 字符串的连接&拆分&匹配及常用操作 Joiner&Splitter @Test public void testJoiner() { String[] str ...
- ubuntu apt-get update 连接不到指定的源
问题描述: ubuntu apt-get update 连接不到指定的源,修改了几个软件源还是连接不上,同样的软件源在别的机器上都可以正常使用,后来发现每次 sudo apt-get update操作 ...
- OC与Swift桥接问题
入职新公司后,接手了一个Swift项目.项目质量已经吐槽过一次就略过了,感兴趣的可以看我之前的博客.当然我之前对Swift只是略有了解,略到只看过没写过的程度,主要语言还是OC.不过嘛其实语言都是相通 ...
- php秒杀
我们知道数据库处理sql是一条条处理的,假设购买商品的流程是这样的: sql1:查询商品库存 ? 1 2 3 4 5 if(库存数量 > 0) { //生成订单... sql2:库存-1 ...
- 虚拟机centos分区
在计算机上安装 Linux 系统,对硬盘进行分区是一个非常重要的步骤,下面介绍几个分区方案. 方案 1 / :建议大小在 5GB 以上. swap :即交换分区,建议大小是物理内存的 1~2 倍. 方 ...
- WPF Template模版之DataTemplate与ControlTemplate【一】
WPF Template模版之DataTemplate与ControlTemplate[一] 标签: Wpf模版 2015-04-19 11:52 510人阅读 评论(0) 收藏 举报 分类: -- ...
- JPA 系列教程8-双向一对一共享主键
双向一对一共享主键的ddl语句 CREATE TABLE `t_person` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `name` varchar(25 ...
- SSH整合中为获取表单对象Action类实现的接口及拦截器配置
保存员工或者用户信息时,以员工为例,是通过表单收集信息的,需要把这些信息赋给一个对象,然后保存到数据库中.对应的Action类须实现Preparable接口及ModelDriven接口,且在Actio ...
- Windows下Apache+Django+mod_wsgi的static和media问题处理
配置好了Apache可以访问Django工程了(参见前篇:Windows编译安装mod_wsgi,配合使用Django+Apahce) 但是Django中的static.media等文件Apache是 ...