알고리즘

SW Expert Academy 3431 : 준환이의 운동관리

만년다딱2 2021. 6. 4. 11:08

1. 문제링크

https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=3&contestProbId=AWE_ZXcqAAMDFAV2&categoryId=AWE_ZXcqAAMDFAV2&categoryType=CODE&problemTitle=&orderBy=PASS_RATE&selectCodeLang=ALL&select-1=3&pageSize=10&pageIndex=1 

 

SW Expert Academy

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

swexpertacademy.com

2. 접근방법

주어진 문제를 보면 조건이 3가지 경우가 나온다

 

운동을 덜 했을때

 

운동을 맞춰서 했을때

 

운동을 넘치도록 했을때

 

에 맞는 조건식을 작성해주면 정답이된다

 

3. 코드

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

public class Solution {
	static int T, ans;
	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());
		T = Integer.parseInt(st.nextToken());
		for (int tc = 1; tc <= T; tc++) {
			st = new StringTokenizer(br.readLine());
			int L = Integer.parseInt(st.nextToken());
			int U = Integer.parseInt(st.nextToken());
			int X = Integer.parseInt(st.nextToken());
			ans = L - X;
			if(X > U)
				ans = -1;
			else if(X <= U && X>= L)
				ans = 0;
			System.out.println("#" + tc + " " + ans);
		}
	}
}

4. 마치며

이...문제가 왜 D3일까? 의문증