🌞Algorithm/🔥Baekjoon
[Baekjoon] 24570_Harp Tuning
뿌야._.
2025. 5. 28. 16:06
문제(출처: https://www.acmicpc.net/problem/24570)
< Harp Tuning >
문제 풀이
알파벳인 경우, (+, -)인 경우, 숫자인 경우를 구분하여 출력한다.
my solution (Java)
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.InputStreamReader;
public class _24570_ { // Harp Tuning
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String str = bf.readLine();
String harp = "";
String number = "";
for (int i = 0; i < str.length(); i++) {
if (Character.isAlphabetic(str.charAt(i))) {
harp += str.charAt(i);
if (!number.equals("")) {
bw.write(number + "\n");
number = "";
}
} else {
if(!harp.equals("")) {
bw.write(harp + " ");
harp = "";
}
if (Character.isDigit(str.charAt(i))) {
number += str.charAt(i);
} else {
if (str.charAt(i) == '+') {
bw.write("tighten ");
} else {
bw.write("loosen ");
}
}
}
}
bw.write(number);
bw.flush();
}
}
변수)
str : 튜닝 명령어
harp : 대문자
number : 감은 횟수
튜닝 명령어를 입력받아 문자열을 탐색하며 다음 과정을 거친다.
1) 알파벳이라면 harp에 추가한다. 만약 number에 값이 있다면 number을 출력하고 비워준다.
2) harp에 값이 있다면 harp를 출력하고 비워준다.
3) 숫자라면 number에 추가한다.
4) +라면 "tighten"을 출력하고, -라면 "loosen"을 출력한다.
마지막에 number 값을 출력한다.