Notice
Recent Posts
Recent Comments
Link
Dev.baelanche
[백준 13420] 사칙연산 본문
반응형
문자열체크 문제이다.
+, -, *, / 가 나오기 전까지의 문자들을 왼쪽 숫자, 그 이후부터 = 이전까지의 문자들을 오른쪽 숫자
= 이후의 문자들을 결과값으로 저장한다.
왼쪽 숫자가 음수일 수 있으므로 그 부분을 유의해야한다.
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
sc.nextLine();
while(t-->0) {
char c[] = sc.nextLine().replaceAll(" ", "").toCharArray();
String left = "";
char mid;
String right = "";
String result = "";
int k = 0;
for(int i=0; true; i++) {
if(i > 0 && (c[i] == '+' || c[i] == '-' || c[i] == '*' || c[i] == '/')) {
k = i+1;
mid = c[i];
break;
} else left += c[i];
}
for(int i=k; true; i++) {
if(c[i] == '=') {
k = i+1;
break;
} else right += c[i];
}
for(int i=k; i<c.length; i++)
result += c[i];
long ans = 0;
if(mid == '+') ans = Long.parseLong(left) + Long.parseLong(right);
if(mid == '-') ans = Long.parseLong(left) - Long.parseLong(right);
if(mid == '*') ans = Long.parseLong(left) * Long.parseLong(right);
if(mid == '/') ans = Long.parseLong(left) / Long.parseLong(right);
System.out.println(ans == Long.parseLong(result) ? "correct" : "wrong answer");
}
}
}
반응형
'Data Structure & Algorithm > PS - JAVA' 카테고리의 다른 글
[백준 13423] Three Dots (0) | 2019.07.20 |
---|---|
[백준 13422] 도둑 (0) | 2019.07.20 |
[백준 13417] 카드 문자열 (0) | 2019.07.20 |
[백준 13414] 수강신청 (0) | 2019.07.20 |
[백준 16678] 모독 (0) | 2019.07.20 |
Comments