leetcode 1893

记录一下每日一题。

 

 leetcode 1893

 

 

 简单题,没什么好说的。

 1 class Solution {
 2     public boolean isCovered(int[][] ranges, int left, int right) {
 3         int[] tags = new int[51];
 4         for(int i = 0; i < 51; i++){
 5             tags[i] = 0;
 6         }
 7         for(int i = 0; i < ranges.length; i++){
 8             int start = ranges[i][0];
 9             int end = ranges[i][1];
10             for(int j = start; j <= end; j++){
11                 tags[j]++;
12             }
13         }
14         boolean ret = true;
15         for(int i = left; i <= right; i++){
16             if(tags[i] < 1){
17                 ret = false;
18                 break;
19             }
20         }
21         return ret;
22     }
23 }

 

个人觉得,官方题解是好一点,但麻烦了不少。

顺便记录一下官方题解

 1 class Solution {
 2     public boolean isCovered(int[][] ranges, int left, int right) {
 3         int[] diff = new int[52];
 4         for(int[] range : ranges){
 5             ++diff[range[0]];
 6             --diff[range[1] + 1];
 7         }
 8         int cur = 0;
 9         for(int i = 1; i <= 50; i++){
10             cur += diff[i];
11             if(i >= left && i <= right && cur < 1){
12                 return false;
13             }
14         }
15         return true;
16     }
17 }

 

闲在家中,不如写到题。

20210723

 

leetcode 1893

上一篇:pooling层,,以及它是否需要被替代??


下一篇:类加载和反射