度小满金融,4.20笔试第一题,改完了不知道能AC多少

import java.util.Scanner;

public class Main {
	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int m = sc.nextInt();
		int a = sc.nextInt();
		int b = sc.nextInt();
		sc.close();
		int[][] nums = new int[n][m];
		int[] res = new int[(n-2)*(m-2)];
		for(int i=0; i<n; i++)
		{
			for(int j=0; j<m; j++)
			{
				nums[i][j] = (i+1) * (j+1) % 10;
			}
		}
		int rowStart = 0;
		int k =0;
		for(int i=0; i<n-a+1; i++)
		{
			int colStart = 0;
			for(int j=0; j<m-b+1; j++)
			{
				res[k++] = maxValue(nums, rowStart,  colStart,  a, b);			
				colStart++;
			}
			rowStart++;
		}
		int sum=0;
		for(int i=0; i<res.length;i++)
		{
			sum += res[i];
		}
		System.out.println(sum);
	}
	public static int maxValue(int[][] nums, int rowStart,  int colStart,  int a, int b)
	{
		int max = 0;
		for(int i=rowStart; i<rowStart+a; i++)
		{
			for(int j=colStart; j<colStart+b; j++)
			{
				max = Math.max(max, nums[i][j]);
			}
		}
		return max;
	}
}

#度小满2020春招开始了##度小满##笔试题目#
全部评论
第二题有没有大佬指点一下。知道用动态规划但是写了很久都没有对。
2 回复 分享
发布于 2020-04-20 20:44
我就是这样的思路,55%
点赞 回复 分享
发布于 2020-04-20 21:44
这个写法 55% 左右
点赞 回复 分享
发布于 2020-04-20 20:40

相关推荐

评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务