ECNUOJ 2856 仰望星空
仰望星空
Time Limit:1000MS Memory Limit:65536KB
Total Submit:373 Accepted:145
Description
我仰望星空,
它是那样辽阔而深邃;
那无穷的真理,
让我苦苦地求索、追随。
我仰望星空,
它是那样庄严而圣洁;
那凛然的正义,
让我充满热爱、感到敬畏。
我仰望星空,
它是那样自由而宁静;
那博大的胸怀,
让我的心灵栖息、依偎。
我仰望星空,
它是那样壮丽而光辉;
那永恒的炽热,
让我心中燃起希望的烈焰、响起春雷。
星空有无数星座,而今天就请你数一数天空有多少星座。
假设天空为w*h的平面,星座由相邻的星星组成。两颗星相邻的条件为横向或纵向或对角相连。如下图为10*5的天空:
..*.....**
.**..*****
.*...*....
..****.***
..****.***
星星为’*’,空白的部分为’.’,上图星空共有2个星座。
Input
第1行:两个由空格分开的整数,1<=w<=80和1<=h<=1000.
第2到h+1行:每一行包含w个’*’或者’.’,代表星空的组成。
Output
一行:表示当前星空星座的个数。
Sample Input
10 5
..*.....**
.**..*****
.*...*....
..****.***
..****.***
15 8
**.**......*..*
..*.**.*...*...
*.*.**.*****.**
...***.****.**.
...**..*.*.....
*****..*****..*
....**...*..*..
*.*...*.*.*.***
Sample Output
2
7
Source
解题:搜索
#include <bits/stdc++.h>
#define pii pair<int,int>
using namespace std;
int w,h;
char table[][];
const int dir[][] = {
-,,,,,-,,,
-,-,,,-,,,-
};
bool isIn(int x,int y) {
return x >= && x < h && y >= && y < w;
}
queue< pii >q;
void bfs(int x,int y) {
while(!q.empty()) q.pop();
q.push(pii(x,y));
table[x][y] = '.';
while(!q.empty()) {
pii now = q.front();
q.pop();
for(int i = ; i < ; ++i) {
x = now.first + dir[i][];
y = now.second + dir[i][];
if(isIn(x,y) && table[x][y] == '*') {
q.push(pii(x,y));
table[x][y] = '.';
}
}
}
}
int main() {
while(~scanf("%d%d",&w,&h)) {
for(int i = ; i < h; ++i)
scanf("%s",table[i]);
int ret = ;
for(int i = ; i < h; ++i) {
for(int j = ; j < w; ++j) {
if(table[i][j] == '*') {
ret++;
bfs(i,j);
}
}
}
printf("%d\n",ret);
}
return ;
}
ECNUOJ 2856 仰望星空的更多相关文章
- 「6月雅礼集训 2017 Day5」仰望星空
[题目大意] 给你$n$个点,被一个半径为$R$的元圆划分成内(包含边界).外两个部分. 要连若干线,每个点只能连一条线,不存在重点和三点共线. 线只能连在内部点和外部点之间,线长度不超过$d$. 如 ...
- 《时间线》:WWT 数字宇宙,虚拟星空
李北辰/文 王尔德说:我们生活在阴沟里,却仍有人仰望星空.如今,这句感叹依旧代表某种程度的正确,但这位19世纪的英国绅士有所不知:在一百多年后的东方"帝都",当困于阴沟中的年轻人们 ...
- xampp常见安装失败问题
遇到这两个错误后不管它,继续安装.完成后下载Microsoft Visual C++ 2008 Redistributable Package (x86),可以到这里下载:Microsoft Visu ...
- ONE
我是漆黑夜空中 闪烁凄凄的一颗星 遥隔千里的双眸一遇 看到了,你那藏在泪光里的话 你一个人 把泪擦干 把话捏在手心 陪着我,承受着黑夜的孤独 说明:来自落网的一个期刊<ONE>. 听这个期 ...
- 从零开始山寨Caffe·壹:仰望星空与脚踏实地
请以“仰望星空与脚踏实地”作为题目,写一篇不少于800字的文章.除诗歌外,文体不限. ——2010·北京卷 仰望星空 规范性 Caffe诞生于12年末,如果偏要形容一下这个框架,可以用"须敬 ...
- JS—实现拖拽
JS中的拖拽示例: 1)实现拖拽思路:当鼠标按下和拖拽过程中,鼠标与拖拽物体之间的相对距离保持不变 2)实现拖拽遇到的问题: 问题1:当鼠标按下移动过快时,离开了拖拽的物体时 ...
- chardet坑——比蜗牛还慢
需求 最近在做一个功能,使用python爬取网页然后保存到本地.其中遇到的一个难题是判断页面的编码方式.有问题就百度喽,当时我没想到自己去解决.一百度就找到了一个叫chardet的插件.大喜过望,试了 ...
- 成功熬了四年还没死?一个IT屌丝创业者的深刻反思
三个IT屌丝创业的故事 从前有三个屌丝,聚在一起做网络.提供免费的网络服务,砸锅卖铁,通宵达旦,除了卖肾,啥都做了.3年后终于做到了五百万用户.对于年轻人来说,能把五百万人玩弄于鼓掌之间,已经是很牛逼 ...
- No.5__C#
One month 今天是个有纪念意义的日子,2015-4-23.今天是实习的第一个月,算是成就达成吧.虽然,除去了周末六日和清明什么的,只剩下20多天了,但是,还是好开心 啊,毕竟是第一次参加工作, ...
随机推荐
- OpenGL编程(六)通过三角形绘画出3D模型
使用三角形绘制3D模型 三角形是基本的多边形,任何多变形都能由三角形组成.三角形是由三个顶点的连线组成.三个点分别是v0:v1:v2. 1.绕法 从某个顶点开始,有两种连线的方法,顺时针和逆时针,这是 ...
- hiho160周 - 字符串压缩,经典dp
题目链接 小Hi希望压缩一个只包含大写字母'A'-'Z'的字符串.他使用的方法是:如果某个子串 S 连续出现了 X 次,就用'X(S)'来表示.例如AAAAAAAAAABABABCCD可以用10(A) ...
- 1112 KGold
给出N个人在0时刻的财富值M[i](所有人在0时刻的财富互不相等),以及财富增长速度S[i],随着时间的推移,某些人的财富值会超越另外一些人.如果时间足够长,对于财富增长最快的人来说,他的财富将超越所 ...
- swift语言点评十九-类型转化与检查
1.oc比较: -(BOOL) isKindOfClass: classObj判断是否是这个类或者这个类的子类的实例 -(BOOL) isMemberOfClass: classObj 判断是否是这个 ...
- 路飞学城Python-Day15
模拟实现一个ATM + 购物商城程序 额度 15000或自定义 实现购物商城,买东西加入 购物车,调用信用卡接口结账 可以提现,手续费5% 支持多账户登录 支持账户间转账 记录每月日常消费流水 提供还 ...
- 【转载】02-PowerDesigner的下载及安装
原创路径:https://blog.csdn.net/ruyu00/article/details/79842807 一.下载 下载路径:https://pan.baidu.com/s/1WD7QHT ...
- 从A小程序跳转到B小程序
从A小程序跳转到B小程序: A小程序 wxml: <navigator target="miniProgram" open-type="navigate" ...
- 紫书 习题8-7 UVa 11925(构造法, 不需逆向)
这道题的意思紫书上是错误的-- 难怪一开始我非常奇怪为什么第二个样例输出的是2, 按照紫书上的意思应该是22 然后就不管了,先写, 然后就WA了. 然后看了https://blog.csdn.net/ ...
- 搭建app自动化测试环境(一)
①:想实现自动化,第一步先安装python然后第二步安装selenium, 第三步安装JDK,然后J配置好JDK环境变量 JAVA_HOME C:\Program Files\Java\jdk1 ...
- springboot 错误页面的配置
springboot的错误页面,只需在templates下新建error文件夹,将404.500等错误页面放进去即可, springboot会自动去里面查找