https://www.acmicpc.net/problem/25215
25215번: 타이핑
민겸이는 영어 소문자와 대문자로 이루어진 문자열을 타이핑하기로 했다. 민겸이가 사용할 수 있는 버튼은 26개의 영어 알파벳 버튼과 마름모(◆) 버튼, 별(★) 버튼이다. 각 버튼은 아래와 같이
www.acmicpc.net
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class java_25215 {
static String sentence;
public static int solve() {
int count = 0;
boolean isUpper = false;
for (int i = 0; i < sentence.length(); i++) {
char alpha = sentence.charAt(i);
// 소문자라면
if (alpha >= 'a') {
if (isUpper) {
if (i + 1 < sentence.length()) {
if (sentence.charAt(i + 1) >= 'a') {
isUpper = false;
}
}
count += 2;
} else {
count += 1;
}
}
// 대문자라면
else {
if (!isUpper) {
if (i + 1 < sentence.length()) {
if (sentence.charAt(i + 1) <= 'Z') {
isUpper = true;
}
}
count += 2;
} else {
count += 1;
}
}
}
return count;
}
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
sentence = br.readLine();
int result = solve();
bw.write(result + "\n");
br.close();
bw.close();
}
}
'Coding Test > BOJ' 카테고리의 다른 글
23561번: Young한 에너지는 부족하다 (0) | 2022.08.20 |
---|---|
1789번: 수들의 합 (0) | 2022.08.20 |
4485번: 녹색 옷 입은 애가 젤다지? (0) | 2022.08.20 |
23563번: 벽 타기 (0) | 2022.08.20 |
20160번: 야쿠르트 아줌마 야쿠르트 주세요 (0) | 2022.08.20 |