bnuoj 33656 J. C.S.I.: P15(图形搜索题)
http://www.bnuoj.com/bnuoj/problem_show.php?pid=33656
【题解】:暴力搜索题
【code】:
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <queue> using namespace std; char map[][];
int vis[][];
int n,m;
int B,F;
int cx[]={,-,,-,,-,,};
int cy[]={,,,-,-,,-,}; int isAllDog(int l,int r)
{
int i=l-,j=r-;
if(i>=&&j>=)
{
if(map[i][j]!='.') return ;
}
i=l-,j=r;
if(i>=)
{
for(;j<r+;j++)
{
if(map[i][j]!='.') return ;
}
}
i=l-,j=r+;
if(i>=&&j<m)
{
if(map[i][j]!='.') return ;
}
i=l,j=r-;
if(j>=)
{
if(map[i][j]!='.') return ;
}
i=l,j=r+;
if(j<m)
{
if(map[i][j]!='.') return ;
}
i=l+,j=r-;
if(i<n&&j>=)
{
if(map[i][j]!='.') return ;
}
i=l+,j=r;
if(i<n)
{
for(;j<r+;j++)
{
if(map[i][j]!='.') return ;
}
}
i=l+,j=r+;
if(i<n&&j<m)
{
if(map[i][j]!='.') return ;
}
return ;
} void seach_birds()
{
int i,j;
for(i=;i<n;i++)
{
for(j=;j<m-;j++)
{
if(map[i][j]=='/'&&map[i][j+]=='\\'&&map[i][j+]=='/'&&map[i][j+]=='\\')
{
if(isAllDog(i,j))
{
B++;
}
j+=;
}
}
}
} void seach_flower(int x,int y)
{
int i;
vis[x][y] = ;
for(i=;i<;i++)
{
int dx = x+cx[i];
int dy = y+cy[i];
if(dx>=&&dx<n&&dy>=&&dy<m&&!vis[dx][dy]&&map[dx][dy]!='.'&&map[dx][dy]!='=')
{
vis[dx][dy]=;
seach_flower(dx,dy);
}
}
} int main()
{
int t;
scanf("%d",&t);
while(t--)
{ scanf("%d%d",&n,&m);
int i;
for(i=;i<n;i++)
{
scanf("%s",map[i]);
}
B=F=;
seach_birds();
memset(vis,,sizeof(vis));
for(i=;i<m;i++)
{
if(n->=&&map[n-][i]!='.'&&vis[n-][i]==)
{
seach_flower(n-,i);
F++;
}
}
printf("Flowers: %d\n",F);
printf("Birds: %d\n",B); // cout<<B<<endl;
}
return ;
}
bnuoj 33656 J. C.S.I.: P15(图形搜索题)的更多相关文章
- 【数位DP】bnuoj 52813 J. Deciphering Oracles
http://acm.bnu.edu.cn/v3/contest_show.php?cid=9208#problem/J [AC] #include<bits/stdc++.h> usin ...
- 【第一部分】01Leetcode刷题
一.二叉树的中序遍历 题目:94. 二叉树的中序遍历.94. Binary Tree Inorder Traversal 解法一: class Solution { public: vector< ...
- C语言打印图形
//输出图形 * * * * * * * * * * * * * * * * * * * * * * * * * //每行5个* void test1(){ // 外层负责行,外层执行一次,内层 ...
- Java如何利用for循环在控制台输出正方形对角线图形
1 /* 2 利用循环在控制台输出如下正方形对角线图形 3 * * * * * * * * * * * 4 * * * * 5 * * * * 6 * * * * 7 * * * * 8 * * * ...
- bnuoj 4187 GCC (数论)
http://www.bnuoj.com/bnuoj/problem_show.php?pid=4187 [题意]:如题 [题解]:取n,m的最小值进行遍历就可以了: 注意 0 1 这组测试数据 [c ...
- 【codeforces.com/gym/100240 J】
http://codeforces.com/gym/100240 J [分析] 这题我搞了好久才搞出样例的11.76....[期望没学好 然后好不容易弄成分数形式.然后我‘+’没打..[于是爆0... ...
- Codeforces Gym101606 J.Just A Minim (2017 United Kingdom and Ireland Programming Contest (UKIEPC 2017))
J Just A Minim 超级无敌大水题,但是被精度卡了一手,输出要精确到小数点后6位,我直接输出的... 代码: 1 #include<iostream> 2 #include< ...
- [游记]CSP 2021 J/S
这一次,也许是我的OI生涯的转折点了--能过,学习OI的时间就不会减少:但不能过,就会减少学习OI的时间-- 上午(S组) 6:00起床.去吃早餐,结果因为边喝粥边喝牛奶导致肚子疼.(我在这里劝大家, ...
- 2016年江西理工大学C语言程序设计竞赛(初级组)
问题 A: 木棒根数 解法:把所有的情况保存下来,加一下就好 #include<bits/stdc++.h> using namespace std; map<char,int> ...
随机推荐
- MongoDB - MongoDB CRUD Operations, Query Documents
Query Method MongoDB provides the db.collection.find() method to read documents from a collection. T ...
- ubuntu安装 ibus-google输入法
1.$sudo apt-get install ibus-googlepinyin //ibus 融合了许多种输入法,google便是一种,此步就是下载安装ibus-google拼音输入法. ...
- php中使用PHPExcel操作excel(xls)文件
读取中文的xls.csv文件会有问题,网上找了下资料,发现PHPExcel类库好用,官网地址:http://phpexcel.codeplex.com/ 1.读取xls文件内容 代码如下 复制代码 ...
- DCL,DDL,DML,DQL
DCL(Data Control Language)是数据库控制语言. 是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句. 在默认状态下,只有sysadmi ...
- Cocos2d-JS动画
与动作密不可分的还有动画,动画又可以分为场景过渡动画和帧动画.场景过渡动画我们在以往介绍过,这一个我们只介绍帧动画.帧动画帧动画就是按一定时间间隔.一定的顺序.一帧一帧地显示帧图片.我们的美工要为精灵 ...
- 20150506—WinForm自动生成按钮&按钮拖动
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- php连接到数据库操作
<?php $result = mysql_query($sql); while($row = mysql_fetch_array($result)) { ?> 要写的内容代码,比如说Ht ...
- 从0开始学习react(二)
今天,开始学习第二节!!! 工欲善其事,必先利其器 react推荐我们使用webpack来打包文件,那么我们就用吧!(其实真心不想用啊) 至于好处网上写的天花乱坠的,大家自行解决啊... 这节主要就学 ...
- 在Java中怎样把数组转换为ArrayList?
翻译自:How to Convert Array to ArrayList in Java? 本文分析了Stack Overflow上最热门的的一个问题的答案,提问者获得了很多声望点,使得他得到了在S ...
- mobileconfig文件的签名和认证(signed、verified)
专题:基于IOS上MDM技术相关资料整理及汇总mobileconfig文件的签名和认证(signed.verified) 一.功能描述: 鉴于我们的设备和MDM server之间已经可以通信,并能完成 ...