썬키의 개발노트
[JAVA-120902] 문자열 계산하기 본문
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
링크를 클릭하면 해당 문제로 이동합니다.
1. 접근하기
이 문제는 사실 입출력 예시만 잘 확인하면 너무나 쉽게 해결할 수 있는 문제이다.
문자열 my_string은 '피연산자1 연산자 피연산자2' 로 구성되어 있는데
이 문자열을 split(" ")를 이용하여 문자를 분리한 후, String 배열에 담아서 풀어나가면 된다.
TO-DO |
1. split 메소드를 이용해서 문자열을 피연산자1, 연산자, 피연산자2로 구분하기 |
2. for문을 이용해서 인덱스 번호가 1, 3, 5, ... 에 속하는 문자열이 +,- 인지 구분해서 계산하기 |
2. 코드
class Solution {
public int solution(String my_string) {
String[] strArr = my_string.split(" ");
int answer = Integer.parseInt(strArr[0]);
for(int i = 1; i < strArr.length; i=i+2) {
if(strArr[i].equals("+")) {
answer += Integer.parseInt(strArr[i+1]);
} else answer -= Integer.parseInt(strArr[i+1]);
}
return answer;
}
}
3. 결과
4. 리뷰
사실 이 문제를 거의 2시간 정도 잡고 있었다. 코딩 테스트 문제를 풀 때 30분 정도 고민해보는게 좋다는데
이 문제는 그냥 내 힘으로 한 번 풀어보겠다! 하는 오기가 발동했던 거 같다. 결과는 처참히 실패,,,😭
그러고 나서 다른 사람의 풀이를 봤는데 내가 간과했던 부분이 입력 예시였다.
나는 무조건 입력이 "3+4-n+n..." 이렇게 붙어서 들어오는줄 알고 이걸 어떻게 분리한담...?
하면서 여러 방법을 시도해봤는데... 시도는 좋았지만 앞으로 문제와 입출력 예를 더 잘보고 풀어야겠다고 생각했다.
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[JAVA-120896] 한 번만 등장한 문자 (0) | 2023.01.19 |
---|---|
[JAVA-120890] 가까운 수 (0) | 2023.01.19 |
[JAVA-120846] 합성수 찾기 (0) | 2023.01.18 |
[JAVA-120815] 피자 나눠 먹기(2) (0) | 2023.01.18 |
[JAVA-120844] 배열 회전시키기 (0) | 2023.01.18 |