2021年 第12届 蓝桥杯 第3次模拟赛真题 九、I【Java版】
发布日期:2021-05-10 03:30:31 浏览次数:22 分类:精选文章

本文共 2155 字,大约阅读时间需要 7 分钟。

#2021年 第12届 蓝桥杯 第3次模拟赛真题 九、I【Java版】

九、I

在这里插入图片描述

public class Main{   	static int weight=0;	static int weight2;	static int min=999;	static int r=0;	static int c=0;	static int[][] a;	static int[][] b;	public static void main(String[] args) {   		Scanner sc=new Scanner(System.in);		int n=sc.nextInt();		int m=sc.nextInt();		a=new int[n][m];		b=new int[n][m];		for (int i = 0; i < a.length; i++) {   			for (int j = 0; j < a[0].length; j++){   				a[i][j]=sc.nextInt();			}		}		for (int i = 0; i < a.length; i++) {   			for (int j = 0; j < a[0].length; j++){   				f(i,j);			}		}		for (int i = 0; i < b.length; i++) {   			for (int j = 0; j < b[0].length-1; j++) {   				System.out.print(b[i][j]+" ");			}			System.out.print(b[i][b[0].length-1]);			System.out.println();		}}private static void f(int p, int q) {   	int max=0;	if(p==0) {   		if(q==0) {   			for (int i = 0; i <=1; i++) {   				for (int j = 0; j <=1; j++) {   					if(a[i+p][j+q]>max)max=a[i+p][j+q];				}			}		}else if(q==a[0].length-1) {   			for (int i = 0; i <=1; i++) {   				for (int j =-1; j <=0; j++) {   					if(a[i+p][j+q]>max)max=a[i+p][j+q];				}			}		}else {   			for (int i = 0; i <=1; i++) {   				for (int j =-1; j <=1; j++) {   					if(a[i+p][j+q]>max)max=a[i+p][j+q];				}			}		}	}else if(p==a.length-1) {   		if(q==0) {   			for (int i =-1; i <=0; i++) {   				for (int j = 0; j <=1; j++) {   					if(a[i+p][j+q]>max)max=a[i+p][j+q];				}			}		}else if(q==a[0].length-1) {   			for (int i =-1; i <=0; i++) {   				for (int j =-1; j <=0; j++) {   					if(a[i+p][j+q]>max)max=a[i+p][j+q];				}			}		}else {   			for (int i =-1; i <=0; i++) {   				for (int j =-1; j <=1; j++) {   					if(a[i+p][j+q]>max)max=a[i+p][j+q];				}			}		}	}else {   		if(q==0) {   			for (int i =-1; i <=1; i++) {   				for (int j = 0; j <=1; j++) {   					if(a[i+p][j+q]>max)max=a[i+p][j+q];				}			}		}else if(q==a[0].length-1) {   			for (int i =-1; i <=1; i++) {   				for (int j = -1; j <=0; j++) {   					if(a[i+p][j+q]>max)max=a[i+p][j+q];				}			}		}else {   			for (int i =-1; i <=1; i++) {   				for (int j =-1; j <=1; j++) {   					if(a[i+p][j+q]>max)max=a[i+p][j+q];				}			}		}	}	b[p][q]=max;}}
上一篇:2021年 第12届 蓝桥杯 省赛java b组真题 D:货物摆放
下一篇:2021年 第12届 蓝桥杯 第3次模拟赛真题 五E【Java版】

发表评论

最新留言

不错!
[***.144.177.141]2025年04月06日 11时37分18秒