본문 바로가기
개발

[Backjoon] 5366번 문제 - 화성 수학

by 마스터누누 2017. 6. 30.
728x90
반응형

겨울 방학에 달에 다녀온 상근이는 여름 방학 때는 화성에 갔다 올 예정이다. (3996번) 화성에서는 지구와는 조금 다른 연산자 @, %, #을 사용한다. @는 3을 곱하고, %는 5를 더하며, #는 7을 빼는 연산자이다. 따라서, 화성에서는 수학 식의 가장 앞에 수가 하나 있고, 그 다음에는 연산자가 있다.


풀이


라인 단위로 받아 배열에 split 해주고,

순환하면서 문자열을 판별하여 미리 설정된 연산을 진행하면 된다.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import java.util.Scanner;
 
/**
 * Created by homr on 2017. 6. 30..
 */
public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        String[] testCase = sc.nextLine().split("");
        int T = Integer.parseInt(testCase[0]);
 
        while(T!=0){
            String[] str = sc.nextLine().split(" ");
 
            double num = Double.parseDouble(str[0]);
 
            for(int i=1; i<str.length; i++){
                if(str[i].equals("@")){
                    num *= 3;
                }else if(str[i].equals("%")){
                    num += 5;
                }else{
                    num -= 7;
                }
            }
 
            System.out.printf("%.2f\n", num);
            T--;
        }
    }
}
cs


반응형

댓글