728x90
본 알고리즘 풀이는 Routine Study에서 진행하고 있습니다.
저를 포함한 구성원이 대부분 초보이므로, 원하시는분은 언제라도 들어오셔도 좋습니다.
문의는 댓글 바람.
문제 출처 : https://www.acmicpc.net/problem/17388
[문제 설명]
[접근 방법]
모든 학교를 돌아야하므로 시간복잡도는 O(N) 그 이하로 나올 수는 없다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
enum School {Soongsil, Korea, Hanyang }
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine()," ");
// 꼴찌 학교 이름
int loserSchoolNumber = 0;
// 꼴찌 학교의 점수
int pointOfLoserSchool = Integer.MAX_VALUE;
// 학교들의 점수 총합
int totalPoint = 0;
int index = 0;
while (st.hasMoreTokens()) {
int currentSchoolPoint = Integer.parseInt(st.nextToken());
totalPoint += currentSchoolPoint;
if (totalPoint >= 100) {
break;
}
if (currentSchoolPoint < pointOfLoserSchool) {
loserSchoolNumber = index;
pointOfLoserSchool = currentSchoolPoint;
}
index++;
}
System.out.println(totalPoint < 100 ? School.values()[loserSchoolNumber] : "OK");
}
}
728x90
반응형
'알고리즘 문제 풀이 > 구현' 카테고리의 다른 글
백준 - 기상캐스터 (0) | 2022.01.30 |
---|---|
백준 - 경비원 (0) | 2022.01.17 |
백준 - 수강신청 (0) | 2022.01.09 |
백준 - 송이의 카드 게임 (0) | 2021.12.30 |
백준 - 카드 뽑기 (0) | 2021.12.28 |