全球变暖java_Java实现第九届蓝桥杯全球变暖

全球变暖

题目描述

你有一张某海域NxN像素的照片,"."表示海洋、"#"表示陆地,如下所示:

.......

.##....

.##....

....##.

..####.

...###.

.......

其中"上下左右"四个方向上连在一起的一片陆地组成一座岛屿。例如上图就有2座岛屿。

由于全球变暖导致了海面上升,科学家预测未来几十年,岛屿边缘一个像素的范围会被海水淹没。具体来说如果一块陆地像素与海洋相邻(上下左右四个相邻像素中有海洋),它就会被淹没。

例如上图中的海域未来会变成如下样子:

.......

.......

.......

.......

....#..

.......

.......

请你计算:依照科学家的预测,照片中有多少岛屿会被完全淹没。

【输入格式】

第一行包含一个整数N。 (1 <= N <= 1000)

以下N行N列代表一张海域照片。

照片保证第1行、第1列、第N行、第N列的像素都是海洋。

【输出格式】

一个整数表示答案。

【输入样例】

7

.......

.##....

.##....

....##.

..####.

...###.

.......

【输出样例】

1

资源约定:

峰值内存消耗(含虚拟机) < 256M

CPU消耗 < 1000ms

请严格按要求输出,不要画蛇添足地打印类似:“请您输入...” 的多余内容。

所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。

不要使用package语句。不要使用jdk1.7及以上版本的特性。

主类的名字必须是:Main,否则按无效代码处理。

import java.util.Scanner;

/**

* 2018蓝桥杯Java B组 全球变暖问题:

* 条件:

.代表海洋像素,#代表像素,相连的一块#代表岛屿,如果陆地像素左右上下某个方向有海洋便会被淹没成海洋

输入:

7

.......

.##.....

.##.....

...##..

..###...

...##..

.......

输出:

.......

.......

.......

.......

...#...

.......

.......

* Created by XQM on 2018/4/2.

*/

public class Main{

public static void main(String[] args){

Scanner sc = new Scanner(System.in);

int n = sc.nextInt();//输入n构成n*n二维数组

String[] s = new String[n];

char[] c;

char[][] a = new char[n][n];//存储输入的字符

char[][] b = new char[n][n];//存储输出的字符

//输入

for (int i = 0;i < n;i++){

s[i] = sc.next();

c = s[i].toCharArray();

for (int j = 0; j < n;j++){

a[i][j] = c[j];

b[i][j] = c[j];

}

}

char temp;

//题目的要求是第一行、第一列、最后一行、最后一列都是.

for (int i = 0;i < n;i++){

for (int j = 0; j < n;j++){

if (i != 0 && i != 6 && j != 0 && j != 6){

temp = a[i][j];

if (temp == '#'){

if ((temp != a[i][j-1]) || (temp != a[i-1][j]) || (temp != a[i][j+1]) || (temp != a[i+1][j])){

b[i][j] = '.';

}

}

}else {

b[i][j] = '.';

}

}

}

//输出

for (int i = 0;i < n;i++){

for (int j = 0; j < n;j++){

System.out.print(b[i][j]);

}

System.out.println();

}

}

}

Java实现第九届蓝桥杯小朋友崇拜圈

小朋友崇拜圈 题目描述 班里N个小朋友,每个人都有自己最崇拜的一个小朋友(也可以是自己). 在一个游戏中,需要小朋友坐一个圈, 每个小朋友都有自己最崇拜的小朋友在他的右手边. 求满足条件的圈最大多少人 ...

Java实现第九届蓝桥杯字母阵列

字母阵列 题目描述 仔细寻找,会发现:在下面的8x8的方阵中,隐藏着字母序列:"LANQIAO". SLANQIAO ZOEXCCGB MOAYWKHI BCCIPLJQ SLAN ...

Java实现第九届蓝桥杯耐摔指数

耐摔指数 题目描述 x星球的居民脾气不太好,但好在他们生气的时候唯一的异常举动是:摔手机. 各大厂商也就纷纷推出各种耐摔型手机.x星球的质监局规定了手机必须经过耐摔测试,并且评定出一个耐摔指数来,之后 ...

Java实现第九届蓝桥杯倍数问题

倍数问题 题目描述 [题目描述] 众所周知,小葱同学擅长计算,尤其擅长计算一个数是否是另外一个数的倍数.但小葱只擅长两个数的情况,当有很多个数之后就会比较苦恼.现在小葱给了你 n 个数,希望你从这 n ...

Java实现第九届蓝桥杯三体攻击

三体攻击 [题目描述] 三体人将对地球发起攻击.为了抵御攻击,地球人派出了 A × B × C 艘战舰,在太空中排成一个 A 层 B 行 C 列的立方体.其中,第 i 层第 j 行第 k 列的战舰(记 ...

Java实现第九届蓝桥杯堆的计数

堆的计数 题目描述 我们知道包含N个元素的堆可以看成是一棵包含N个节点的完全二叉树. 每个节点有一个权值.对于小根堆来说,父节点的权值一定小于其子节点的权值. 假设N个节点的权值分别是1~N,你能求出 ...

Java实现第九届蓝桥杯阶乘位数

阶乘位数 题目描述 小明维护着一个程序员论坛.现在他收集了一份"点赞"日志,日志共有N行.其中每一行的格式是: ts id 表示在ts时刻编号id的帖子收到一个"赞&qu ...

Java实现第九届蓝桥杯螺旋折线

螺旋折线 题目描述 如图p1.pgn所示的螺旋折线经过平面上所有整点恰好一次. 对于整点(X, Y),我们定义它到原点的距离dis(X, Y)是从原点到(X, Y)的螺旋折线段的长度. 例如dis(0 ...

Java实现第九届蓝桥杯递增三元组

题目6.递增三元组 题目描述 给定三个整数数组 A = [A1, A2, - AN], B = [B1, B2, - BN], C = [C1, C2, - CN], 请你统计有多少个三元组(i, j ...

随机推荐

Axure RP动态面板操作

参考资料: 动态面板实现banner的轮播效果

如何用PowerShell列出你机器上的&period;NET Framework的版本号和SP服务补丁

代码下载:本文提到的脚本,可以从微软的代码库下载, How to determine versions & service pack levels of .NET Framework by P ...

xml配置文件

xml文件的层级结构      configuration 配置  properties 属性     settings 设置     typeAliases 类型命名     typeHa ...

Valid Number &commat;python

Valid Number Validate if a given string is numeric. Some examples:"0" => true" 0.1 ...

Spring集成hibernate错误

八月 25, 2016 7:55:31 下午 org.apache.tomcat.util.digester.SetPropertiesRule begin警告: [SetPropertiesRule ...

NeralJS需求整理及思路

NeralJs希望通过解析json数据,动态创建和渲染报表,每个报表呈现一定时间范围的数据,通过使用表格图表等不同的方式,使数据的呈现不死板,且更容易看出规律. 说通俗点,就是动态在一个区域内生成多张 ...

分享到QQ空间、新浪微博、腾讯微博的代码!

给网页加上分享代码,借助网友的力量推广网站,目前已经很流行了 以下是网页代码 QQ空间分享代码如下:

UVALive 2324&Tab;Human Gene Functions(动态规划)

题意:求出将两个字符串改成一样长度所能形成最大的相似度. 思路:这个可以说是编辑距离的一个变形,编辑距离最终状态时要两个字符串完全一致,这个就是要求长度一样,而且这个只允许插入“—”这一个字符.模仿编 ...

nodejs和npm的安装

下载nodejs的压缩包 网址:https://nodejs.org/en/ 下载以tar.xz结尾的包例如:node-v8.9.4-linux-x64.tar.xz 上传包到制定的目录 可以用lrz ...

AngularJS学习之旅—AngularJS HTML DOM&lpar;十三&rpar;

1.AngularJS HTML DOM AngularJS 为 HTML DOM 元素的属性提供了绑定应用数据的指令. ng-disabled 指令:ng-disabled 指令直接绑定应用程序数据 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值