-
[SWEA] 1860. 진기의 최고급 붕어빵PS/Java 2021. 3. 13.
N명의 사람들 중 진기는 0초부터 붕어빵을 만들기 시작하며, M초의 시간을 들이면 K개의 붕어빵을 만들 수 있다.
붕어빵이 완성되면 어떤 시간 지연도 없이 다음 붕어빵 만들기를 시작할 수 있다.
0초 이후에 손님들이 언제 도착하는지 주어지면, 모든 손님들에게 기다리는 시간없이 붕어빵을 제공할 수 있는지 판별하라
import java.util.Arrays; import java.util.Scanner; public class 진기의붕어빵 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int T = scanner.nextInt(); for(int tc = 1; tc <= T; tc++) { int n = scanner.nextInt(); // 손님 int m = scanner.nextInt(); // m초의 시간을 들이면 int k = scanner.nextInt(); // k개의 붕어빵을 만들 수 있다. String possible = "#" + tc + " Possible"; String impossible = "#" + tc + " Impossible"; if(n == 0) { System.out.println(impossible); continue; } int[] arr = new int[n]; for(int i = 0; i < n; i++) { arr[i] = scanner.nextInt(); } Arrays.sort(arr); int count = 0; int j = 0; boolean p = true; for(int i = 0; i <= arr[n-1]; i++) { if (i > 0 && i % m == 0) { count += k; } while(j < arr.length && i == arr[j]) { count--; j++; if(count < 0) { p = false; break; } } } if(p) { System.out.println(possible); } else { System.out.println(impossible); } } } }
'PS > Java' 카테고리의 다른 글
[SWEA] 3499. 퍼펙트 셔플 (0) 2021.03.13 [SWEA] 1247. [S/W 문제해결 응용] 3일차 - 최적 경로 (0) 2021.03.13 [SWEA] 2063. 중간값 찾기 (0) 2021.03.13 [SWEA] 1861. 정사각형 방 (0) 2021.03.10 [SWEA] 1225. [S/W 문제해결 기본] 7일차 - 암호생성기 (0) 2021.03.10