sdust 2410 Mine Number
今天看了3个这种题了 枚举第一行即可
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<cmath>
#include<queue>
#include<stack>
#include<vector>
#include<map>
#include<string>
#define maxn
#define INF
using namespace std;
typedef long long LL;
int n,m,flag; int num1[][],num2[][];
int get_sum(int i,int j)
{
int tem=num2[i][j];
if(i>)
tem+=num2[i-][j];
if(j<m-)
tem+=num2[i][j+];
if(j>)
tem+=num2[i][j-];
return tem;
}
int check(int x)
{
int ans=num2[][x];
if (x)
ans+=num2[][x-];
if (x<m-)
ans+=num2[][x+];
if (ans==num1[][x] || ans+==num1[][x])
return true;
return false;
}
int puan(int s)
{
for(int j=;j<m;j++)
{
if((s&(<<j)))
num2[][j]=;
else
num2[][j]=;
}
if(n==)
{
for(int i=;i<m;i++)
if(get_sum(,i)!=num1[][i])
return ;
return ;
}
for(int i=;i<m;i++)
{
if(!check(i))
return ;
}
for(int i=;i<n;i++)
for(int j=;j<m;j++)
{
if(get_sum(i-,j)==num1[i-][j])
num2[i][j]=;
else if(get_sum(i-,j)+==num1[i-][j])
num2[i][j]=;
else
return ; }
for(int i=;i<m;i++)
if(get_sum(n-,i)!=num1[n-][i])
return ;
return ;
}
int main()
{ char str[];
int t;
while(scanf("%d",&t)!=EOF)
{
for(int ii=; ii<=t; ii++)
{
scanf("%d%d",&n,&m);
for(int i=; i<n; i++)
{
scanf("%s",str);
for(int j=; j<m; j++)
num1[i][j]=str[j]-'';
} for(int i=; i<(<<m); i++)
{
if(puan(i))
break;
}
printf("Case %d:\n",ii);
for(int i=; i<n; i++)
{
for(int j=; j<m; j++)
{
if(num2[i][j])
printf("*");
else
printf(".");
}
printf("\n");
}
}
} return ;
}
sdust 2410 Mine Number的更多相关文章
- [2012山东省第三届ACM大学生程序设计竞赛]——Mine Number
Mine Number 题目:http://acm.sdut.edu.cn/sdutoj/problem.php? action=showproblem&problemid=2410 Time ...
- Mine Number(搜索,暴力) ACM省赛第三届 G
Mine Number Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 Every one once played the gam ...
- 【python游戏编程之旅】第五篇---嗷大喵爱吃鱼小游戏开发实例
本系列博客介绍以python+pygame库进行小游戏的开发.有写的不对之处还望各位海涵. 我们一同在前几期的博客中已经学到了很多pygame的基本知识了,现在该做个小游戏实战一下了. 前几期博客链接 ...
- 山东省第三届ACM省赛
Solved ID PID Title Accepted Submit A 2407 Impasse (+) 0 0 B 2415 Chess 0 0 C 2414 An interest ...
- 8659 Mine Sweeping
时间限制:500MS 内存限制:65535K提交次数:37 通过次数:15 题型: 编程题 语言: G++;GCC Description The opening ceremony of the ...
- POJ 3340 & HDU 2410 Barbara Bennett's Wild Numbers(数学)
题目链接: PKU:http://poj.org/problem?id=3340 HDU:http://acm.hdu.edu.cn/showproblem.php?pid=2410 Descript ...
- hdu4678 Mine 2013 Multi-University Training Contest 8 博弈题
Mine Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total Submi ...
- How To Mine Bitcoins 比特币挖矿
linux 下查看 gpu 的信息: sudo lshw -C display windows下查看cuda信息:In directory C:\Program Files\NVIDIA Corpor ...
- HDU 4678 Mine (2013多校8 1003题 博弈)
Mine Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total Submis ...
随机推荐
- 有关C#中使用if else和try catch的问题及效率问题
本来if esle 是流程控制 try catch是异常处理,本身其实是没有可比性的,但是开发过程中有的人很容易混用,而且两者有的时候效果似乎一样,所以我还是用了个简单的测试来简单的比较下. 不多说, ...
- S1 : 传递参数
ECMAScript 中所有函数的参数都是按值传递的.也就是说,把函数外部的值复制给函数内部的参数,就和把值从一个变量复制到另一个变量一样.基本类型值的传递如同基本类型变量的复制一样,而引用类型值的传 ...
- 国内HTML5前端开发框架汇总
国内HTML5前端开发框架汇总 Dawei Cheng 程大伟... 于 星期日, 02/12/2012 - 20:53 提交 国外很有多优秀的HTML5前端开发框架相信大家都耳熟能详:JQuery ...
- LA 3516 - Exploring Pyramids
https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_probl ...
- ios 8.4 Xcode6.4 设置LaunchImage图片
Step1 1.点击Image.xcassets 进入图片管理,然后右击,弹出"New Launch Image" 2.如图,右侧的勾选可以让你选择是否要对ipad,横屏,竖屏,以 ...
- [vijos P1531] 食物链
做出的第一道NOI题目?(噗,还是看题解才会的…按某篇解题说的,这题就比我年轻四岁…T T 做的第一道IOI题目是USACO上的Packing Rectangles...这题比我还老!)对我等弱渣来说 ...
- C语言基础--switch
switch格式: switch (条件表达式) { case 整数: // case可以有一个或多个 语句; break; case 整数: 语句; break; default: 语句; brea ...
- Spring学习笔记之Constructor-based or setter-based DI?
如果是强制依赖,那么使用构造器注入,如果是可选依赖,那么使用set方法注入.Spring鼓励构造器注入,可以确保依赖项不为null, Since you can mix constructor-bas ...
- android selector详解
--> 改变字体的颜色<selector xmlns:android="http://schemas.android.com/apk/res/android"> ...
- 《使用this作为返回值的相关问题》
//使用this作为返回值的相关问题: /* 如果在某个方法中把this作为返回值,则可以多次连续的调用同一个方法,从而使得代码 更加简洁,但是,这种把this作为返回值的方法可能造成实际意义的模糊, ...