백준 10810 공 넣기 (JAVA 자바 풀이)

단순 구현 문제로서 구현해주면 된다.
범위가 전체 배열을 순회하도록 주어지면 이중 반복문이 돌면서 최대 O(n^2)까지 시간 복잡도가 높아지지만 주어지는 N,M 데이터의 최대 범위가 100으로 낮기 때문에 괜찮다.
💡 코드 구현
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
import java.util.stream.IntStream;
public class Main {
   private static final BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
   public static void main(String[] args) throws IOException {
      StringTokenizer stringTokenizer = new StringTokenizer(bufferedReader.readLine());
      int N = Integer.parseInt(stringTokenizer.nextToken());
      int M = Integer.parseInt(stringTokenizer.nextToken());
      int[] buckets = new int[N+1];
      while(M-->0){
         stringTokenizer = new StringTokenizer(bufferedReader.readLine());
         int start = Integer.parseInt(stringTokenizer.nextToken());
         int end = Integer.parseInt(stringTokenizer.nextToken());
         int number = Integer.parseInt(stringTokenizer.nextToken());
         IntStream.rangeClosed(start, end).forEach(i->buckets[i] = number);
      }
      StringBuilder stringBuilder = new StringBuilder();
      IntStream.range(1, buckets.length).forEach(i -> stringBuilder.append(buckets[i]).append(" "));
      System.out.println(stringBuilder);
   }
}
반응형
    
    
    
  '알고리즘 > 백준' 카테고리의 다른 글
| 백준 10811 바구니 뒤집기 (JAVA 자바 풀이) (0) | 2023.07.02 | 
|---|---|
| 백준 10813 공 바꾸기 (JAVA 자바 풀이) (1) | 2023.07.02 | 
| 백준 16713 Generic Queries (JAVA 자바 풀이) (0) | 2023.07.01 | 
| 백준 2910 빈도 정렬 (JAVA 자바 풀이) (0) | 2023.07.01 | 
| 백준 1302 베스트셀러 (JAVA 자바 풀이) (2) | 2023.06.30 | 
 
                    
                   
                    
                   
                    
                  