Java实现 蓝桥杯 算法提高 矩形靶
试题 算法提高 矩形靶
资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
在矩形的世界里任何事物都是矩形的,矩形的枪靶,甚至矩形的子弹。现在给你一张NM的枪靶,同时告诉你子弹的大小为(2l+1)(2r+1)。读入一张01的图每个点的01状态分别表示这个点是否被子弹的中心击中(1表示被击中,0则没有)一旦一个点被子弹的中心击中,那么以这个点为中心 (2l+1)(2r+1) 范围内靶子上的点都会被击毁。要求输出最终靶子的状态。
输入格式
第一行为N,M,L,R表示靶子的大小,以及子弹的大小。
下面读入一个NM的01矩阵表示每个点是否被子弹的中心击中
输出格式
N*M的01矩阵表示靶子上的每个点是否被破坏掉
样例输入
4 4 1 1
1000
0000
0000
0010
样例输出
1100
1100
0111
0111
样例输入
7 4 1 1
1000
0000
0010
0000
0000
0000
0100
样例输出
1100
1111
0111
0111
0000
1110
1110
数据规模和约定
N,M<=600,l,r<=5
package com.company;
import java.util.Scanner;
public class 矩形靶 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
int l = sc.nextInt();
int r = sc.nextInt();
char [][] str = new char[n][m];
char[][] a = new char[n][m];
for (int i=0;i<n;i++){
String s = sc.nextLine();
if (s.equals("")){
s=sc.nextLine();
}
str[i]=s.toCharArray();
a[i]=s.toCharArray();
}
sc.close();
for (int i=0;i<n;i++){
for (int j=0;j<m;j++){
if (str[i][j]=='1'){
for (int i1=i-l<0?0:i-l;i1<=i+l&&i1<n;i1++){
for (int j1=j-r<0?0:j-r;j1<=j+r&&j1<m;j1++){
a[i1][j1]='1';
}
}
}
}
}
for (int i=0;i<n;i++){
for (int j=0;j<m;j++){
System.out.print(a[i][j]);
}
System.out.println();
}
}
}
Java实现 蓝桥杯 算法提高 矩形靶的更多相关文章
- Java实现 蓝桥杯 算法提高 进攻策略加强(暴力)
试题 算法提高 进攻策略加强 问题描述 植物大战僵尸这款游戏中,还有一个特别的玩儿法:玩家操纵僵尸进攻植物. 首先,僵尸有m种(每种僵尸都是无限多的),玩家可以选择合适的僵尸来进攻.使用第i种僵尸需要 ...
- Java实现 蓝桥杯 算法提高 小X的购物计划
试题 算法提高 小X的购物计划 问题描述 小X打算去超市shopping.小X没什么钱,只有N元.超市里有M种物品,每种物品都需要money,在小X心中有一个重要度.有的物品有无限件,有的物品只有几件 ...
- Java实现 蓝桥杯 算法提高 和谐宿舍2
试题 算法提高 和谐宿舍2 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 我的某室友学过素描,墙上有n张他的作品.这些作品都是宽度为1,高度不定的矩形,从左到右排成一排,且底边在同 ...
- Java实现 蓝桥杯 算法提高 天天向上(DP)
试题 算法提高 天天向上 问题描述 A同学的学习成绩十分不稳定,于是老师对他说:"只要你连续4天成绩有进步,那我就奖励给你一朵小红花."可是这对于A同学太困难了.于是,老师对他放宽 ...
- Java实现 蓝桥杯 算法提高 欧拉函数(数学)
试题 算法提高 欧拉函数 问题描述 老师出了一道难题,小酱不会做,请你编个程序帮帮他,奖金一瓶酱油: 从1-n中有多少个数与n互质? |||||╭══╮ ┌═════┐ ╭╯让路║═║酱油专用车║ ╰ ...
- Java实现 蓝桥杯 算法提高 计算超阶乘(暴力)
试题 算法提高 计算超阶乘 问题描述 计算1*(1+k)(1+2k)(1+3k)-(1+n*k-k)的末尾有多少个0,最后一位非0位是多少. 输入格式 输入的第一行包含两个整数n, k. 输出格式 输 ...
- Java实现蓝桥杯 算法提高 线段和点
算法提高 线段和点 时间限制:1.0s 内存限制:256.0MB 提交此题 问题描述 有n个点和m个区间,点和区间的端点全部是整数,对于点a和区间[b,c],若a>=b且a<=c,称点a满 ...
- Java实现蓝桥杯-算法提高 P1003
算法提高 P1003 时间限制:1.0s 内存限制:256.0MB 作为一名网络警察,你的任务是监视电子邮件,看其中是否有一些敏感的关键词.不过,有些狡猾的犯罪嫌疑人会改变某些单词的字母顺序,以逃避检 ...
- Java实现蓝桥杯 算法提高 八皇后 改
**算法提高 8皇后·改** 时间限制:1.0s 内存限制:256.0MB 提交此题 问题描述 规则同8皇后问题,但是棋盘上每格都有一个数字,要求八皇后所在格子数字之和最大. 输入格式 一个8*8的棋 ...
随机推荐
- 4-JVM 参数
JVM 参数 标准参数:不会随着jdk版本的变化而变化.比如:java -version.java -help 非标准参数:随着JDK版本的变化而变化. -X参数[用的较少]非标准参数,也就是在JDK ...
- Linux,Unix,GNU 到底有什么样的渊源?
Linux,Unix, GNU,你可能经常听到这些名字被放在一起,比如 “Linux是类Unix系统”, “Linux其实应该叫 GNU/Linux” 等等.为什么会有这些说法,这些名词的历史渊源和背 ...
- 使用plupload实现多文件上传,自定义参数
下载地址:点击打开链接 1.在开发中可能需要用户附件上传的功能,实现批量上传功能其实就将多个上传任务放到一个集合中,分别上传. 2,使用plupload js插件可以很轻松的实现带参数的多文件上传 3 ...
- 2018-06-28 jq CSS处理
CSS处理 1.CSS样式 css() -> 获取jq对象的css样式 css({'':"'}) ->设置jq对象的css样式 相当于js对象的style()方法 2.位置 of ...
- tcp/ip 学习(一)
TCP/IP协议是什么? TCP:Transmission Control Protocol 传输控制协议 IP:Internet Protocol 因特网协议 简单来说,TCP/IP协议就是一个 ...
- Reflux之Store
Reflux中的Store既是一个listener(既有对action的监听,又有对store的监听)同时又是一个publisher. 一.监听单个action const Reflux = requ ...
- 数据分析之Numpy、Matplotlib库
NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库. 菜鸟教程:https://www.run ...
- 计算程序运行时间(.net1.1 于.net2.0的区别)在.net2.0中提供了Stopwatch类,简单例子
1. [代码].NET 2.0 using System.Diagnostics; private Stopwatch stw = new Stopwatch(); private void ...
- 51Nod - 1255
也是第十一届校赛的C题,不过他把1e5改成了1e7. 一开始就想到用贪心做.思路是这样的:开一个字符数组ans保存答案.然后从头到尾遍历题目给出的字符串S,如果ans数组中还没有这个字母,那么就把字母 ...
- 三、$JavaScript(1)
1.闭包 闭包就是能够读取其他函数内部变量的函数 闭包是指有权访问另一个函数作用域中变量的函数,创建闭包的最常见的方式就是在一个函数内创建另一个函数,通过另一个函数访问这个函数的局部变量,利用闭包可以 ...