문제
겨울 방학에 달에 다녀온 상근이는 여름 방학 때는 화성에 갔다 올 예정이다. (3996번) 화성에서는 지구와는 조금 다른 연산자 @, %, #을 사용한다. @는 3을 곱하고, %는 5를 더하며, #는 7을 빼는 연산자이다. 따라서, 화성에서는 수학 식의 가장 앞에 수가 하나 있고, 그 다음에는 연산자가 있다.
3996번: 위대한 사기꾼
첫 번째 예제에서 상근이는 0, 1, 2, 9, 10, 11, 18, 19, 20을 외웠다. 19는 3진법과 -3진법에서 19 = 2013 = 201-3 으로 표현이 같다. 하지만, 7은 7 = 213 = 111-3 으로 같지 않다. 두 번째 예제의 경우에는 0, 1, 4, 5,
www.acmicpc.net
입력
첫째 줄에 테스트 케이스의 개수 T가 주어진다. 다음 줄에는 화성 수학식이 한 줄에 하나씩 주어진다. 입력으로 주어지는 수는 정수이거나 소수 첫째 자리까지 주어지며, 0 이상 100 이하이다. 연산자는 최대 3개 주어진다.
ex)
3
3 @ %
10.4 # % @
8 #
출력
각 테스트 케이스에 대해서, 화성 수학식의 결과를 계산한 다음에, 소수점 둘째 자리까지 출력한다.
ex)
14.00
25.20
1.00
코드
복사코드
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
int n = Integer.parseInt(scanner.nextLine());
for(int i = 0 ; i<n ; i++){
String ch = scanner.nextLine();
String[] ch_list = ch.split(" ");
float sum = Float.parseFloat(ch_list[0]);
for(int j = 1 ; j<ch_list.length ; j++){
if(ch_list[j].equals("@")) {
sum = sum * 3;
}
else if(ch_list[j].equals("%")) {
sum = sum + 5;
}
else if(ch_list[j].equals("#")) {
sum = sum - 7;
}
}
System.out.println(String.format("%.2f",sum));
}
}
}
'java > 백준 java' 카테고리의 다른 글
[자바/Java] 백준 4458번 첫 글자를 대문자로 (0) | 2022.07.07 |
---|---|
[자바/Java] 백준 4493번 가위 바위 보? (0) | 2022.07.05 |
[자바/Java] 백준 5554번 심부름 가는 길 (0) | 2022.06.30 |
[자바/Java] 백준 5622번 다이얼 (0) | 2022.06.28 |
[자바/Java] 백준 7568번 덩치 (0) | 2022.06.24 |