最大岛屿

时间限制:1000 ms  |  内存限制:65535 KB
难度:2
描写叙述

神奇的海洋。惊险的探险之路,打捞海底宝藏,激烈的海战,海盗劫富等等。加勒比海盗,你知道吧?杰克船长驾驶着自己的的战船黑珍珠1号要征服各个海岛的海盜,最后成为海盗王。

这是一个由海洋、岛屿和海盗组成的危急世界。面对危急重重的海洋与诡谲的对手。怎样凭借智慧与运气。建立起一个强大的海盗帝国。

杰克船长手头有一张整个海域的海图,上面密密麻麻分布着各个海屿的位置及面积。他想尽快知道整个海域共同拥有多少岛屿以及最大岛屿的面积。

输入
第1行:M N T。表示海域的长,宽及一个单位表示的面积大小

接下来有M行 ,每行有N个01组成的序列以及当中穿插一些空格。0表示海水,1表示陆地,当中的空格没用,能够忽略掉。


输出
输出一行。有2个整数,一个空格间隔,表示整个海域的岛屿数。以及最大岛屿的面积
例子输入
8 16 9900000000 00000000000011001100000000011110001110000000000  00 000000000111  111000001  10001110000  00000000100001111 1111000000000000000000
例子输出
5 990
提示
①若一个陆地八个方向之中的一个(上、下、左、右、左上、右上、左下、右下)的位置也是陆地。则视为同一个岛屿。

② 如果第一行,最后一行。第一列,最后一列全为0.

③ 1<M, N≤500 1<T≤100000
来源

source=%E7%AC%AC%E5%85%AB%E5%B1%8A%E6%B2%B3%E5%8D%97%E7%9C%81%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%E5%A4%A7%E8%B5%9B" style="color:rgb(55,119,188)">第八届河南省程序设计大赛

上传者
hnu_acm


一个深搜 递归就好

#include <stdio.h>
#include <string.h>
char map[505][505];
bool vis[505][505];
int max=0;
void dfs(int x,int y)
{
if(map[x][y]=='0'||vis[x][y]==true)
return ;
max++;
vis[x][y]=true;
dfs(x,y+1);
dfs(x,y-1);
dfs(x-1,y);
dfs(x+1,y);
dfs(x+1,y+1);
dfs(x+1,y-1);
dfs(x-1,y+1);
dfs(x-1,y-1);
}
int main()
{
int m,n,x;
while(~scanf("%d %d %d",&m,&n,&x))
{
memset(vis,false,sizeof(vis));
memset(map,0,sizeof(map));
for(int i=0;i<m;i++)
{
getchar();
for(int j=0;j<n;j++)
{
char ch=getchar();
if(ch==' ')
j--;
else
map[i][j]=ch;
}
}
int Max=0,count=0;
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
{
if(map[i][j]=='1'&&!vis[i][j])
{
max=0;
dfs(i,j);
if(max>Max)
Max=max;
count++;
}
}
printf("%d %d\n",count,Max*x);
}
return 0;
}

nyoj1237 最大岛屿(河南省第八届acm程序设计大赛)的更多相关文章

  1. nyoj 1238 最少换乘 (河南省第八届acm程序设计大赛)

    题目1238 题目信息 执行结果 本题排行 pid=1238" style="text-decoration:none; color:rgb(55,119,188)"&g ...

  2. nyoj 1239 引水project (河南省第八届acm程序设计大赛)

    题目1239 pid=1239" style="color:rgb(55,119,188)">题目信息 pid=1239" style="col ...

  3. 河南省第八届ACM程序设计大赛

    A:挑战密室 #include <iostream> #include <cstdio> #include <cstring> #include <algor ...

  4. 河南省第八届ACM程序设计大赛总结

    简单的对这次省赛做个总结:总体来说这个比赛过程中做的还算比较顺利,虽然中间多多少少遇到一些坑,正式比赛开始后,我们就开始找水题,当然了我首先把英文题目翻译了一遍,发现了一道水题,这道题目其实就是判断点 ...

  5. 河南省第四届ACM程序设计大赛

    A: 序号互换 #include <cstdio> #include <cstdlib> #include <cstring> #include <algor ...

  6. 河南省第五届ACM程序设计大赛

    D:   遥 控 器 #include<cstdio> #include<cstring> #include<iostream> #include<algor ...

  7. “玲珑杯”郑州轻工业学院第八届ACM程序设计大赛暨河南高校邀请赛-正式赛(总结)

    这次轻院校赛,我们去了五个队,怀着打酱油的心态早早爬起来坐上校车出发了,由于昨晚室友打游戏,以及看视频大笑...没睡好,快1点才睡着,感觉特别困,车上没地方,睡不着,就在车上闭目养神,由于在新校区,不 ...

  8. 西南科技大学第十一届ACM程序设计大赛发言稿

    西南科技大学第十一届ACM程序设计大赛发言稿 各位老师.志愿者及参赛选手: 大家好,我是来自计科学院卓软1301的哈特13,很荣幸今天能站在这里代表参赛选手发言. 回想起来,我参加ACM比赛已经快两年 ...

  9. 第13届 广东工业大学ACM程序设计大赛 C题 平分游戏

    第13届 广东工业大学ACM程序设计大赛 C题 平分游戏 题目描述 转眼间又过了一年,又有一届的师兄师姐要毕业了. ​ 有些师兄师姐就去了景驰科技实习. 在景驰,员工是他们最宝贵的财富.只有把每一个人 ...

随机推荐

  1. cxf 生成客户端代码调用服务

    cxf是另一种发布webservice的方式,与jdk提供的相比 jdk提供的是wsimport cxf 提供的是 wsdl2java- d 地址 根据http://www.cnblogs.com/f ...

  2. laravel-v5.1数据库连接文件是.env文件

  3. state Threads 开源库介绍

    译文在后面. State Threads for Internet Applications Introduction State Threads is an application library ...

  4. 为MFC中的ListBox添加水平滚动条

    我们知道,MFC中的水平滚动条并不像垂直滚动条那样的智能.当文字超出ListBox的宽度时,水平滚动条并不会自己出现,我们需要手动的调用CListBox中的函数SetHorizontalExtent设 ...

  5. JSON对象和JSON字符串以及JSON.parse 函数的使用

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. powerdesigner 画ER图

    ER图 即为 CDM图 - Conceptual Data Modal CDM可以转换成PDM.OOM.LDM等图,具体请详查 一般,CDM图示在概要设计阶段创建,PDM图示根据CDM图的基础上产生的 ...

  7. C# 添加,修改,删除Xml节点 摘录

    C# 添加,修改,删除Xml节点 //添加xml节点    private void AddXml(string image, string title)     {        XmlDocume ...

  8. windows 2003 群集

    http://www.tudou.com/programs/view/-UZoSIuUvXs/

  9. FTL页面常用到的一些方法combobox、combotree、datagrid

    参考文件:点击下载 1.combobox: (1).js 1)初始化combobox //相似度 $('#same').combobox({ //url:"<@s.url value= ...

  10. unity, do nothing的state

    要想在animator的stateMachine中建一个"doNothing",要注意:为了保证"doNothing"state能正常运转,不被无故跳过, Mo ...