【其他】wikioi 1536 海战
来源:互联网 发布:淘宝礼品卡 日亚 zhihu 编辑:程序博客网 时间:2024/04/30 02:29
题目链接:http://wikioi.com/problem/1536/
分析:
本来看着这个题很像floodfill之类的,被吓哭了。。。但是仔细一看,so easy!
由于船是矩形的,所以从左上向右下搜就行,顺便判断一下,如果左、上都不连那么是一块新的,ans加1。
对于判断是否相邻,有一种简单方法。
如图,无论怎不符合,两船边界的情形肯定是这四种情况之一。所以一一判断即可,不符合便跳出。
代码:
#include<iostream>#include<cstdio>using namespace std;char a[1010][1010];int r,c,ans=0;int main(){ cin>>r>>c; for (int i=1;i<=r;i++) for (int j=1;j<=c;j++) cin>>a[i][j]; for (int i=1;i<=r;i++) for (int j=1;j<=c;j++) { if (a[i][j]=='#') {bool b=false; if (a[i-1][j]=='#') { if ((a[i-1][j-1]!='#'&&a[i][j-1]=='#')||(a[i-1][j+1]!='#'&&a[i][j+1]=='#') ||(a[i-1][j-1]=='#'&&a[i][j-1]!='#')||(a[i-1][j+1]=='#'&&a[i][j+1]!='#')) { cout<<"Bad placement."; return 0; } } else if (a[i-1][j]!='#'&& a[i][j-1]!='#') ans++; } } cout<<"There are "<<ans<<" ships.";return 0;}
- 【其他】wikioi 1536 海战
- codevs 1536 海战
- 【codevs 1536】海战
- 【codevs 1536】海战
- 海战
- Codevs 1536 海战 (DFS || BFS)+判断
- 海战游戏
- codevs1536 海战
- [vijosP1076]海战
- 【u006】海战
- 《疯狂海战》策划案
- 蓝海战略
- 蓝海战略
- 蓝海战略?
- 蓝海战略
- 蓝海战略
- 《蓝海战略》读书笔记
- POJ 1856(海战)
- mysql远程连接问题
- 初学C++
- Java编译时异常与运行时异常
- Flex中的HDividedBox和VDividedBox的比较
- SOJ3865 红色病毒
- 【其他】wikioi 1536 海战
- oracle sub share pool简介以及 共享sql实现实质。
- Myeclipse中文乱码问题
- 菜鸟学数据库(五)——MySQL必备命令
- Struts2中Action获取Jsp页面信息
- OCP-1Z0-051-V9.02-34题
- git 将仓库push到server
- 谁说Vim不是IDE?(四)
- 28-Dialog点击选择确定,取消,显示在TextView中