题解 | #不要二#

不要二

https://www.nowcoder.com/practice/1183548cd48446b38da501e58d5944eb

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        //我们可以通过公式推断出,a[i][j]放了蛋糕的话,
            // a[i]a[j+2],a[i+2]a[j]就不能放蛋糕
            Scanner in = new Scanner(System.in);
            int w = 0;
            int h = 0;
            while (in.hasNextInt()) { // 注意 while 处理多个 case
                w = in.nextInt();
                h = in.nextInt();
            }
            int[][] arr = new int[w][h];//初始化都为0,默认没有蛋糕
            int count = 0;
            for (int i = 0; i < w; i++) {
                for (int j = 0; j < h; j++) {
                   if (arr[i][j]==0){//要防止越界i+2,j+2
                        count++;
                        if (i+2<w){
                            arr[i+2][j] =1;//指定这些不能放蛋糕
                        }
                        if (j+2<h) {
                            arr[i][j + 2] = 1;
                        }
                    }
                }
            }
            System.out.println(count);
        }

}

全部评论

相关推荐

02-26 09:15
已编辑
蚌埠学院 golang
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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