알고리즘
백준 15904 UCPC는 무엇의 약자일까?
킨글
2024. 5. 13. 20:45
문제
설명
- 대문자만 upperStr 리스트에 담았다.
- UUCCPPCC와 같이 문자가 올 수 있으므로 searchIdx와 searchStr을 운영해서 순서대로 문자가 있는지 찾아내었다.
코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String input = br.readLine();
final int length = input.length();
List<Character> upperStr = new ArrayList<>();
for (int i = 0; i < length; i++) {
int num = input.charAt(i);
// 대문자 범위
if(num >= 65 && num <= 96) {
upperStr.add((char)num);
}
}
int searchIdx = 0;
String searchStr = "UCPC";
boolean isUCPC = false;
for (int i = 0; i < upperStr.size(); i++) {
if(searchStr.charAt(searchIdx) == upperStr.get(i)) {
searchIdx++;
}
if(searchIdx == 4) {
isUCPC = true;
break;
}
}
if(isUCPC) {
bw.write("I love UCPC");
} else {
bw.write("I hate UCPC");
}
bw.flush();
bw.close();
}
}