문제 : https://www.acmicpc.net/problem/23334
코드 : https://github.com/NaHwaSa/BOJ_BaekjunOnlineJudge/blob/master/23300/BOJ_23334.java
브론즈 티어지만 자바 한정으로 시간초과 날 위험이 큰 문제라 남겨봅니다. 자바에 시간 어드밴티지 없이 모든 언어 동일하게 1초 제한인 문제입니다.
이 문제의 경우 일반적으로 생각할 수 있는, 입력받은걸 배열에 넣고 정렬하는 방식으로 하게 되면 시간초과가 날 확률이 있습니다. g,s,b가 최대 999이고, g,s,b 순서대로 비교가 되면 되므로
g*1000000 + s*1000 + b 로 처리를 하게되면 최대 10억-1 이므로 int형으로 한방에 표현 가능합니다.
예를들어 gsb가 각각 22,21,22라면 22,021,022가 됩니다. 그럼 단순히 가장 큰 int 값을 가지는 문자열을 찾으면 되므로, 해싱도 필요없고 그냥 입력받으면서 바로바로 최대값을 찾을 수 있습니다.
'PS > BOJ' 카테고리의 다른 글
백준 1195 자바 - 킥다운 (BOJ 1195 JAVA) (0) | 2021.11.02 |
---|---|
백준 1111 자바 - IQ Test (BOJ 1111 JAVA) (0) | 2021.11.02 |
백준 22728 자바 - Amida, the City of Miracle (BOJ 22728 JAVA) (0) | 2021.10.30 |
백준 1004 자바 - 어린 왕자 (BOJ 1004 JAVA) (0) | 2021.10.29 |
백준 1003 자바, 파이썬, C# - 피보나치 함수 (BOJ 1003 JAVA, Python, C#) (0) | 2021.10.29 |
댓글