package 面试真题; import java.util.Scanner; public class 笔试3601 { public static int Sum(int[][] input,int m,int n) { int dec=0;//需要减去的 for(int i=0;i<m;i++) for(int j=0;j<n;j++) { if(j>0) { if(input[i][j]>=1&&input[i][j-1]>=1) { if(input[i][j]<=input[i][j-1]) { dec+=input[i][j]; }else { dec+=input[i][j-1]; } } } } for(int i=0;i<n;i++) {// for(int j=0;j<m;j++) { if(j>0) { if(input[j][i]>=1&&input[j-1][i]>=1) { if(input[j][i]<=input[j-1][i]) { dec+=input[j][i]; }else { dec+=input[j-1][i]; } } } } } //一个大于1的情况 for(int i=0;i<m;i++) { for(int j=0;j<n;j++) { dec+=input[i][j]-1; } } dec=2*dec;//减去的面 不包括地面 return dec; } public static void main(String[] args) { int sum=0; Scanner str=new Scanner(System.in); int index=str.nextInt(); int index0=str.nextInt(); int input[][]=new int[index][index0]; int outpot[][]=new int[index][index0]; for(int i=0;i<index;i++) { for(int j=0;j<index0;j++) { input[i][j]=str.nextInt(); sum+=input[i][j]*6; } } System.out.println(sum-Sum(input,index,index0)); } }