hdu 4500 小Q系列故事——屌丝的逆袭

小Q系列故事——屌丝的逆袭

 

import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner input=new Scanner(System.in);
		while(true){
			int n=input.nextInt();
			int m=input.nextInt();
			if(n+m==0)
				break;
			int a[][]=new int[n+1][m+1];
			int b[][]=new int[n+1][m+1];
			for(int i=1;i<=n;i++){
				for(int j=1;j<=m;j++){
					a[i][j]=input.nextInt();
				}
			}
			int max=Integer.MIN_VALUE;//取整形最小值
			int x=-1,y=-1;
			for(int i=1;i<=n;i++){
				for(int j=1;j<=m;j++){
					if(j+1<=m){//右邻居
						if(a[i][j]<0&&a[i][j+1]<0||a[i][j]>0&&a[i][j+1]>0)
							b[i][j]-=Math.abs(a[i][j+1]);
						else
							b[i][j]+=Math.abs(a[i][j+1]);
					}
					if(i+1<=n){//下邻居
						if(a[i][j]<0&&a[i+1][j]<0||a[i][j]>0&&a[i+1][j]>0)
							b[i][j]-=Math.abs(a[i+1][j]);
						else
							b[i][j]+=Math.abs(a[i+1][j]);
					}
					if(j-1>0){//左邻居
						if(a[i][j]<0&&a[i][j-1]<0||a[i][j]>0&&a[i][j-1]>0)
							b[i][j]-=Math.abs(a[i][j-1]);
						else
							b[i][j]+=Math.abs(a[i][j-1]);
					}
					if(i-1>0){//上邻居
						if(a[i][j]<0&&a[i-1][j]<0||a[i][j]>0&&a[i-1][j]>0)
							b[i][j]-=Math.abs(a[i-1][j]);
						else
							b[i][j]+=Math.abs(a[i-1][j]);
					}
					if(b[i][j]>max){//求最大
						max=b[i][j];
						x=i;
						y=j;
					}
				}
			}
			System.out.println(x+" "+y+" "+max);
		}
	}
}


 

原文地址:https://www.cnblogs.com/dyllove98/p/3132232.html