poj1691绘画板
1
7
0 0 2 2 1
0 2 1 6 2
2 0 4 2 1
1 2 4 4 2
1 4 3 6 1
4 0 6 4 1
3 4 6 6 2
#include<stdio.h>
#include<stdlib.h>
int data[100][100] = {0};
int zuo[16][5];
int z = 0;
int x = 0;
int y = 0;
int min = 15;
int cun[16] = {0};
int ip[15] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14};
int op[15]; int num = 0;
void DFS(int col,int step);
bool issafe(int c);
bool safe(int step,int i);
int main()
{
int n;
freopen("a.txt","r",stdin);
scanf("%d",&n);
for(int t = 0;t < n;t++)
{
scanf("%d",&z);
for(int r = 0;r < z;r++)
{
for(int s = 0;s < 5;s++)
{
scanf("%d",&zuo[r][s]);
if(zuo[r][2] > x)
{
x = zuo[r][2];
}
if(zuo[r][3] > y)
{
y = zuo[r][3];
}
} } DFS(0,0);
printf("%d\n",min);
num = 0;
min = 15;
for(int f = 0;f < 17;f++)
{
op[f] = 0;
cun[f] = 0;
for(int l = 0;l < 6;l++)
{
zuo[f][l] = 0;
} }
for(int p = 0;p <= x;p++)
{
for(int q = 0;q <= y;q++)
{
data[p][q] = 0;
}
}
}
return 0;
}
void DFS(int col,int step)
{
if(step == z)
{
if(num < min)
{
min = num;
}
return;
}
for(int i = 0;i < z;i++)
{
if(safe(step,i) && cun[i] == 0 && issafe(i))
{
cun[i] = 1;
op[step] = i;
for(int a = zuo[i][0];a < zuo[i][2];a++)
{
for(int b = zuo[i][1];b < zuo[i][3];b++)
{
data[a][b] = zuo[i][4];
}
}
if(col != zuo[i][4])
{
num++;
}
DFS(zuo[i][4],step + 1);
cun[i] = 0;
op[step] = 0;
for(int a = zuo[i][0];a < zuo[i][2];a++)
{
for(int b = zuo[i][1];b < zuo[i][3];b++)
{
data[a][b] = 0;
}
}
if(col != zuo[i][4])
{
num--;
} }
} }
bool issafe(int c)
{
bool ret = true;
for(int i = 0;i < zuo[c][0];i++)
{
for(int j = zuo[c][1];j < zuo[c][3];j++)
{
if(data[i][j] == 0)
{
ret = false;
return ret;
}
}
}
return ret;
}
bool safe(int step,int i)
{
bool ret = true;
for(int k = 0;k < step;k++)
{
if(i == op[k])
{
ret = false;
break;
}
}
return ret;
}
poj1691绘画板的更多相关文章
- Android绘画板(普通绘画模式和缩放平移绘画模式)
ScaleSketchPadDemo 项目地址: demo apk体验下载 demo2 apk体验下载 用法: 进入项目根目录:https://github.com/ShaunSheep/ScaleS ...
- Android 开源可缩放平移的绘画板
ScaleSketchPadDemo 此项目包含两个模块 app1 为普通绘画板 app2 为可所发的绘画板 方便各位Android 开发者理解和使用 用法: 进入项目根目录:https://gith ...
- fabric.js和高级画板
本文介绍fabric.js框架使用,以及使用fabricjs打造一个高级画板程序. 高级画板功能介绍 全局绘制颜色选择 护眼模式.网格模式切换 自由绘制 画箭头 画直线 画虚线 画圆/椭圆/矩形/直角 ...
- 【分享】用Canvas实现画板功能
前言 PC端测试:QQ浏览器全屏绘画完成.缩小时内容会被清空,切换背景颜色内容会被重置,其他暂无发现: 手机端测试:微信内置浏览器不通过:Safari 浏览器使用画笔时没固定页面会有抖动效果,使用橡皮 ...
- 绘客708s的设置
平时也有画画的想法,虽然画的不好,但是装备还是少不了的.因此,在大概一年之前就入手了绘客的708s的绘画板,10寸乘6寸的,很大,手绘方便多了. 在这段时间内,使用绘画板的时候还是遇到了一些问题,最主 ...
- Github装(zao)逼(jia)指(da)南(fa)
Github之于工程师,类似于微博相册之于嫩模,像是个门面. 无论是晋升答辩,还是求职面试,有一个丰富的代码仓库不敢说好处有多大,但总归是有的.并且好处不局限于此,代码开源才会暴露问题才会改正,并且会 ...
- IOS 作业项目(4)步步完成 画图 程序(剧终)
// // CHViewController.m // SuperDrawingSample // // Created by JaikenLI on 13-11-21. // Copyrig ...
- Java版连连看
连连看大家应该都玩过,不多说直接上一个做好的界面截图吧,所有的功能都在上面的,要做的就只是如何去实现它们了. 差不多就是这个样子.先说一下大致的思路吧.首先编写基本的界面:把什么按钮啊,表格啊什么的都 ...
- iOS学习——(转)UIResponder详解
本文转载自:ios开发 之 UIResponder详解 我们知道UIResponder是所有视图View的基类,在iOS中UIResponder类是专门用来响应用户的操作处理各种事件的,包括触摸事件( ...
随机推荐
- WampServer修改MySQL密码
WampServer安装后密码是空的,需要设置一下 一般有两种方式: 一是通过phpMyAdmin直接修改: 二是使用WAMP的MySql控制台修改. 第一种: ①在phpMyAdmin界面中点击[用 ...
- group By 和 Union 、 Union all的用法
我学习的是MySQL,学习写sql语句过程中遇到Group By 和 Union. 大家乐意看这两个链接,写的很好 Group By: www.cnblogs.com/rainman/archive/ ...
- UVA 11825 Hackers’ Crackdown(集合动态规划 子集枚举)
Hackers’ Crackdown Miracle Corporations has a number of system services running in a distributed com ...
- hdu 1396 Counting Triangles(递推)
Counting Triangles Problem Description Given an equilateral triangle with n thelength of its side, p ...
- Windows phone 之Socket
服务器端: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sy ...
- phpstorm集成phpunit(转)
转自http://blog.csdn.net/zhuziying99/article/details/49028321 phpstorm集成phpunit1.下载phpunit.phar,将该文件放到 ...
- 开发错误日志之IllegalArgumentException:MALFORMED
java.lang.IllegalArgumentException: MALFORMED 上面存在中文问题是因为java.util.zip下的格式转换有问题 ,jdk中的zip存在字符编码的问题. ...
- 在js脚本里计算多个小数的加法问题
当在js脚本里计算多个小数的加法时,算得的结果往往会自动取整,这时候我们就应该加入以下代码: function toDecimal(x) { var val = Number(x); if (!isN ...
- __name__ == '__main__'的作用
当你打开一个.py文件时,经常会在代码的最下面看到if __name__ == '__main__':,现在就来介 绍一下它的作用. 模块是对象,并且所有的模块都有一个内置属性 __name__.一个 ...
- asp.net mvc jqgrid 同一个页面查询不同的表,jqgrid显示不同表的表头和数据并且分页
基于我上一篇文章<a href="http://www.cnblogs.com/alasai/p/4765756.html">asp.net mvc excel导入&l ...