알고리즘
백준 228654번 피로도 (JAVA)
박카스마시며코딩
2023. 3. 26. 15:27
https://www.acmicpc.net/problem/22864
22864번: 피로도
첫 번째 줄에 네 정수 $A$, $B$, $C$, $M$이 공백으로 구분되어 주어진다. 맨 처음 피로도는 0이다.
www.acmicpc.net
package BOJ.simulation;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
import java.util.function.Function;
public class BOJ_22864 {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
Function<String,Integer> stoi = Integer::parseInt;
int fatigue = stoi.apply(st.nextToken());
int work = stoi.apply(st.nextToken());
int rest = stoi.apply(st.nextToken());
int maxFatigue = stoi.apply(st.nextToken());
int result = 0;
int nowFatigue = 0;
for(int time = 0 ; time < 24 ; time++){
if(nowFatigue + fatigue <= maxFatigue){
nowFatigue += fatigue;
result += work;
}else{
nowFatigue = Math.max(nowFatigue - rest,0);
}
}
System.out.println(result);
}
}