알고리즘/SWEA

D3 1860. 진기의 최고급 붕어빵

  • -

https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5LsaaqDzYDFAXc

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

www.swexpertacademy.com

 

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokenizer; public class Solution { public static void main(String[] args) throws IOException { // TODO Auto-generated method stub BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int T = Integer.parseInt(br.readLine()); StringBuilder sb = new StringBuilder(); for(int t=1; t<=T; t++) { StringTokenizer tokens = new StringTokenizer(br.readLine()); int N = Integer.parseInt(tokens.nextToken()); // 방문자수 int M = Integer.parseInt(tokens.nextToken()); // M초에 걸쳐 int K = Integer.parseInt(tokens.nextToken()); // K개 완성 int [] arriveTime = new int[N]; tokens = new StringTokenizer(br.readLine()); for(int i=0; i<N; i++) { //int idx = scanner.nextInt(); arriveTime[i] = Integer.parseInt(tokens.nextToken());// 도착 시간 } Arrays.sort(arriveTime); // 입력 처리 완료! String result = "Possible"; for(int i=1; i<=N; i++) { int time = arriveTime[i-1]; int bread = time/M*K-i; // 해당시점의 사람 수(i)만큼 빵을 사감 if(bread<0) { result = "Impossible"; break; } } sb.append(String.format("#%d %s%n",t, result)); } System.out.println(sb); } static String src = "4\r\n" + "2 2 2\r\n" + "3 4\r\n" + "2 2 2\r\n" + "1 2\r\n" + "2 2 1\r\n" + "4 2\r\n" + "2 2 1\r\n" + "3 2"; }
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.