본문 바로가기
알고리즘/SWEA

[Java] SWEA 8457번 알 덴테 스파게티

by 컴공맨 2021. 2. 15.
 

SW Expert Academy

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

swexpertacademy.com


풀이

각 모래시계의 배수가 오차범위의 시간에 포함된다면 정답을 +1을 하여 해결하였습니다.


코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Solution {
	public static int N, B, E;
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringBuilder sb = new StringBuilder("");
		StringTokenizer st;
		
		int T = Integer.parseInt(br.readLine());
		for (int tc = 1; tc <= T; ++tc) {
			st = new StringTokenizer(br.readLine());
			N = Integer.parseInt(st.nextToken());
			B = Integer.parseInt(st.nextToken());
			E = Integer.parseInt(st.nextToken());
			
			st = new StringTokenizer(br.readLine());
			int answer = 0;
			
			int max_time = B + E;
			int min_time = B - E;
			
			for (int i = 0; i < N; ++i) {
				int sandglass = Integer.parseInt(st.nextToken());
				int totalTime = sandglass;
				
				while (totalTime <= max_time) {
					if (totalTime >= min_time) {
						answer++;
						break;
					}
					
					totalTime += sandglass;
				}
			}
			
			sb.append("#").append(tc).append(" ").append(answer).append("\n");
		}
		
		System.out.println(sb);
	}
}

 

pyo7410/Algorithm

1일 1커밋을 목표로! Contribute to pyo7410/Algorithm development by creating an account on GitHub.

github.com