문제 : https://www.acmicpc.net/problem/15725
문자열 파싱 문제이다. 다음의 경우에 대해서 case work를 진행하면 쉽게 풀 수 있다.
1. x+n, n+x와 같은 형태(n은 아예 없이 "x"와 같은 경우도 포함) -> 1 출력
2. -x+n, n-x와 같은 형태 -> -1 출력
3. x없이 n과 같은 형태 -> 1차항이 아예 없으므로 0 (아마 여기서 많이들 틀릴 듯)
4. ax+n, n+ax의 형태 -> a
5. -ax+n, n-ax의 형태 -> -a
적절히 위의 모든 경우를 찾아내면 된다.
코드 : https://github.com/NaHwaSa/BOJ_BaekjunOnlineJudge/blob/master/15700/BOJ_15725.java
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
private void solution() throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = br.readLine();
int answer = 10001;
if (s.charAt(0)=='x') {
answer = 1;
} else if (s.charAt(0)=='-' && s.charAt(1)=='x') {
answer = -1;
} else if (s.indexOf('x') == -1) {
answer = 0;
}
if (answer != 10001) {
System.out.println(answer);
return;
}
int x = s.indexOf('x');
String ans = "";
for (int i = x-1; i >= 0; i--) {
if (s.charAt(i) == '+' || s.charAt(i) == '-') {
ans = s.charAt(i) + ans;
break;
}
ans = s.charAt(i) + ans;
}
System.out.println(ans);
}
public static void main(String[] args) throws Exception {
new Main().solution();
}
}
'PS > BOJ' 카테고리의 다른 글
백준 1622 자바 - 공통 순열 (BOJ 1622 JAVA) (0) | 2021.11.25 |
---|---|
백준 11969 자바 - Breed Counting (BOJ 11969 JAVA) (0) | 2021.11.24 |
백준 4781 자바 - 사탕 가게 (BOJ 4781 JAVA) (0) | 2021.11.23 |
백준 8598 자바 - Zając (BOJ 8598 JAVA) (0) | 2021.11.23 |
백준 1747 자바 - 소수&팰린드롬 (BOJ 1747 JAVA) (0) | 2021.11.23 |
댓글