Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 스프링부트 도커 배포
- 스프링부트 도커로 배포
- 프로그래머스 풀이
- Lv1
- Stack
- java
- StringTokenizer
- 스프링부트 도커
- Queue
- lv0
- 스택
- 자바
- 알고리즘
- 오름차순 정렬
- SWEA
- 큐
- 버퍼
- 프로그래머스 문자열 정렬
- 백준
- lv2
- 프로그래머스 자바
- 문자열
- 삼각형의 완성조건
- 백준 N과 M 자바
- Programmers
- 프로그래머스
- index of
- 이진수 변환
- COS Pro
- 클라이언트
Archives
- Today
- Total
mun dev
[COS PRO 1급] 1-3계산기 by 문자열 자바(Java) 본문
문제링크
문제유형
빈칸 채우기
문제
// 다음과 같이 import를 사용할 수 있습니다.
import java.util.*;
class Main {
class Pair{
public int firstNum;
public int secondNum;
}
public int func_a(int numA, int numB, char exp){
if (exp == '+')
return numA + numB;
else if (exp == '-')
return numA - numB;
else
return numA * numB;
}
public int func_b(String exp){
for(int i = 0; i < exp.length(); i++){
char e = exp.charAt(i);
if(e == '+' || e == '-' || e == '*')
return i;
}
return -1;
}
public Pair func_c(String exp, int idx){
Pair ret = new Pair();
ret.firstNum = Integer.parseInt(exp.substring(0, idx));
ret.secondNum = Integer.parseInt(exp.substring(idx + 1));
return ret;
}
public int solution(String expression) {
int expIndex = func____();
Pair numbers = func____();
int result = func____();
return result;
}
// 아래는 테스트케이스 출력을 해보기 위한 main 메소드입니다.
public static void main(String[] args) {
Main sol = new Main();
String expression = "123+12";
int ret = sol.solution(expression);
// [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
System.out.println("solution 메소드의 반환 값은 " + ret + " 입니다.");
}
}
문제 풀이
// 다음과 같이 import를 사용할 수 있습니다.
import java.util.*;
class Main {
class Pair{
public int firstNum;
public int secondNum;
}
public int func_a(int numA, int numB, char exp){
if (exp == '+')
return numA + numB;
else if (exp == '-')
return numA - numB;
else
return numA * numB;
}
public int func_b(String exp){
for(int i = 0; i < exp.length(); i++){
char e = exp.charAt(i);
if(e == '+' || e == '-' || e == '*')
return i;
}
return -1;
}
public Pair func_c(String exp, int idx){
Pair ret = new Pair();
ret.firstNum = Integer.parseInt(exp.substring(0, idx));
ret.secondNum = Integer.parseInt(exp.substring(idx + 1));
return ret;
}
public int solution(String expression) {
int expIndex = func_b(expression);
Pair numbers = func_c(expression, expIndex);
int result = func_a(numbers.firstNum, numbers.secondNum, expression.charAt(expIndex));
return result;
}
// 아래는 테스트케이스 출력을 해보기 위한 main 메소드입니다.
public static void main(String[] args) {
Main sol = new Main();
String expression = "123+12";
int ret = sol.solution(expression);
// [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
System.out.println("solution 메소드의 반환 값은 " + ret + " 입니다.");
}
}
'알고리즘 > COS PRO 1급' 카테고리의 다른 글
[COS PRO 1급] 1-6 체스의 나이트 자바(Java) (0) | 2023.11.24 |
---|---|
[COS PRO 1급] 1-5 소용돌이 수 자바(Java) (0) | 2023.11.24 |
[COS PRO 1급] 1-4 타임머신 자바(Java) (0) | 2023.11.24 |
[COS PRO 1급] 1-2 해밍 거리 구하기 자바(Java) (0) | 2023.11.24 |
[COS PRO 1급] 1-1 음식전문점 운영 자바(Java) (0) | 2023.11.24 |