poj1656---数黑格子
题意:有white,black,test操作
black将给定范围涂黑,white将给定范围涂白,test将给定范围的黑格子数出来并且输出
思路:无论哪个操作格子范围都在 (x,y) (x+L-1,y+L-1),行跨度:x到x+L-1,列跨度:y到y+L-1
一个white操作,使用两个for循环对这一范围内的元素赋值,1位黑,0为白
以上行列跨度为1开始的,如果想直接引用,100*100数组最上面增加1行,最左边增加一列
arr[101][101],可以直接引用
#include <stdio.h>
#include <stdlib.h>
#include<string.h>
int table[][],row,col;
void white(int x,int y,int L)
{
for(row=x;row<=(x+L-);row++)
{
for(col=y;col<=(y+L-);col++)
{
table[row][col]=;
}
}
}
void black(int x, int y ,int L)
{
for(row=x;row<=(x+L-);row++)
{
for(col=y;col<=(y+L-);col++)
{
table[row][col]=;
}
}
} int test(int x, int y ,int L)
{
int count=;
for(row=x;row<=(x+L-);row++)
{
for(col=y;col<=(y+L-);col++)
{
if(table[row][col]==)
count++;
}
}
return count;
} int main()
{
int n,x,y,L,count;
char str[];
memset(table,,sizeof(table));
scanf("%d",&n);
while(n--)
{
scanf("%s%d%d%d",str,&x,&y,&L);
if(strcmp(str,"WHITE")==)
{
white(x,y,L);
}
else if(strcmp(str,"BLACK")==)
{
black(x,y,L);
}
else
{
count=test(x,y,L);
printf("%d\n",count);
}
}
return ;
}
poj1656---数黑格子的更多相关文章
- 谷歌浏览器chrome假死、卡死、经常无反应,火狐firefox闪黑格子的解决办法(显卡/驱动兼容问题)
问题: chrome 升级到高版本,切换标签后点击,滚轮都没反应,假死不动.F12呼出控制台来开发时更让人揪心.(大概chrome 25更高) 原因: 我的电脑是:集显+512M独显,可切换的 ...
- 【wikioi】1907 方格取数3(最大流+最大权闭合子图)
http://www.wikioi.com/problem/1907/ 这题我一开始想到的是状压,看到n<=30果断放弃. 然后也想到了黑白染色,然后脑残了,没想到怎么连边. 很简单的一题 黑白 ...
- Libre 6007 「网络流 24 题」方格取数 / Luogu 2774 方格取数问题 (网络流,最大流)
Libre 6007 「网络流 24 题」方格取数 / Luogu 2774 方格取数问题 (网络流,最大流) Description 在一个有 m*n 个方格的棋盘中,每个方格中有一个正整数.现要从 ...
- HDU3338 Kakuro Extension —— 最大流、方格填数类似数独
题目链接:https://vjudge.net/problem/HDU-3338 Kakuro Extension Time Limit: 2000/1000 MS (Java/Others) ...
- BZOJ 1475: 方格取数( 网络流 )
本来想写道水题....结果调了这么久!就是一个 define 里面少加了个括号 ! 二分图最大点权独立集...黑白染色一下 , 然后建图 : S -> black_node , white_no ...
- 【BZOJ1475】方格取数 [最小割]
方格取数 Time Limit: 5 Sec Memory Limit: 64 MB[Submit][Status][Discuss] Description 在一个n*n的方格里,每个格子里都有一 ...
- [BZOJ1475]方格取数 网络流 最小割
1475: 方格取数 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 1025 Solved: 512[Submit][Status][Discuss] ...
- 【bzoj1475】方格取数 网络流最小割
题目描述 在一个n*n的方格里,每个格子里都有一个正整数.从中取出若干数,使得任意两个取出的数所在格子没有公共边,且取出的数的总和尽量大. 输入 第一行一个数n:(n<=30) 接下来n行每行n ...
- Bzoj2756 [SCOI2012]奇怪的游戏
2756: [SCOI2012]奇怪的游戏 Time Limit: 40 Sec Memory Limit: 128 MBSubmit: 3220 Solved: 886 Description ...
随机推荐
- Preorder, Inorder, and Postorder非递归总结
Preorder, Inorder, and Postorder Iteratively Summarization[1] 1.Pre Order Traverse public List<In ...
- 通宵疯狂积累VB.NET基础知识
VB.NET中Module的概念 为什么VB.NET中会有一个Module的东西,而在C#等语言中是没有的 首先,这是一个历史原因.早先的VB语言都有模块和类模块的概念.所谓模块一般就是存放公用的一些 ...
- Oracle ORA-01555 快照过旧 说明
oracle高级知识(1) ORA-01555 快照过旧,是数据库中很常见的一个错误,比如当我们的事务需要使用undo来构建CR块的时候,而此时对应的undo 已经不存在了, 这个时候就会报ORA-0 ...
- SQL顺序列找出断号
select id from info id-----------123567810111215 (11 行受影响) 方法一: select (select max(id)+1 from Info w ...
- Android 禁止软键盘自动弹出
Android系统对EditText这个控件有监听功能,如果某个Activity中含有该控件,就会自动弹出软键盘让你输入,这个看似人性化的方案有 时候并不被用户喜欢的,所以在有些情况下要禁用该功能.这 ...
- 用gdb调试程序笔记: 以段错误(Segmental fault)为例
用gdb调试程序笔记: 以段错误(Segmental fault)为例[转] 1.背景介绍2.程序中常见的bug分类3.程序调试器(如gdb)有什么用4.段错误(Segmental fault)介绍5 ...
- leetcode_question_111 Minimum Depth of Binary Tree
Given a binary tree, find its minimum depth. The minimum depth is the number of nodes along the shor ...
- nginx启动关闭
[root@localhost sbin]# ./nginx -s reload [root@localhost sbin]# ./nginx -s stop [root@localhost sbin ...
- android 常用调用系统功能
1.从google搜索内容 Intent intent = new Intent(); intent.setAction(Intent.ACTION_WEB_SEARCH); intent.putEx ...
- leetcode之 median of two sorted arrays
这是我做的第二个leetcode题目,一开始以为和第一个一样很简单,但是做的过程中才发现这个题目非常难,给人一种“刚上战场就踩上地雷挂掉了”的感觉.后来搜了一下leetcode的难度分布表(leetc ...