1222. [S/W 문제해결 기본] 6일차 - 계산기1 D4
[문제]
문자열로 이루어진 계산식이 주어질 때, 이 계산식을 후위 표기식으로 바꾸어 계산하는 프로그램을 작성하시오.
예를 들어
“3+4+5+6+7”
라는 문자열로 된 계산식을 후위 표기식으로 바꾸면 다음과 같다.
"34+5+6+7+"
변환된 식을 계산하면 25를 얻을 수 있다.
문자열 계산식을 구성하는 연산자는 + 하나뿐이며 피연산자인 숫자는 0 ~ 9의 정수만 주어진다.
[입력]
각 테스트 케이스의 첫 번째 줄에는 문자열 계산식의 길이가 주어진다. 그 다음 줄에 문자열 계산식이 주어진다.
총 10개의 테스트 케이스가 주어진다.
[출력]
#부호와 함께 테스트 케이스의 번호를 출력하고, 공백 문자 후 답을 출력한다.
입력101
9+8+5+9+2+4+1+8+3+9+3+8+7+8+6+8+9+4+1+1+7+6+1+5+8+7+6+9+6+3+1+3+1+7+5+9+2+8+4+3+7+3+4+7+3+4+8+3+2+6+6
83
7+4+8+3+4+8+5+5+3+6+7+1+2+5+6+5+5+6+1+6+7+8+6+4+7+4+3+1+6+1+2+1+6+8+6+9+2+7+4+3+2+3
...
9+8+5+9+2+4+1+8+3+9+3+8+7+8+6+8+9+4+1+1+7+6+1+5+8+7+6+9+6+3+1+3+1+7+5+9+2+8+4+3+7+3+4+7+3+4+8+3+2+6+6
83
7+4+8+3+4+8+5+5+3+6+7+1+2+5+6+5+5+6+1+6+7+8+6+4+7+4+3+1+6+1+2+1+6+8+6+9+2+7+4+3+2+3
...
출력#1 267
#2 197
#2 197
[코드]
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) throws IOException{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
for (int i = 1; i <= 10; i++) {
int N=Integer.parseInt(br.readLine());
String s=br.readLine();
int result=0;
for (int i2 = 0; i2 < N; i2+=2) {
result+=(s.charAt(i2)-48);
}
System.out.println("#"+i+" "+result);
}
br.close();
}
}'SWEA(SWExpertacAdemy)' 카테고리의 다른 글
| [SWEA] 1486. 장훈이의 높은 선반 D4 (자바) (1) | 2025.05.23 |
|---|---|
| [swea] 1218. [S/W 문제해결 기본] 4일차 - 괄호 짝짓기 D4 (자바) (1) | 2025.05.23 |
| [SWEA] 22979. 문자열 옮기기 D3 (자바) (1) | 2025.05.22 |
| [SWEA] 9778. 카드 게임 D3 (자바) (1) | 2025.05.22 |
| 20551. 증가하는 사탕 수열 D3 (1) | 2025.05.21 |