본 페이지는 C++ 독학을 위해 작성한 포스트입니다 풀이과정도 포함되어있지만 문법공부에 대한 비중이 있습니다.
(+ Java언어 내용도 포함되어있습니다. )
https://school.programmers.co.kr/learn/courses/30/lessons/12925/solution_groups?language=cpp
1.문제설명
문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.
2. 문제해결 접근
- 아스키코드를 활용한 문자열을 숫자로 변경
- Integer.parse()사용
함수를 이용하면 아주 손쉽게 풀이할 수 있는 문제였다.
문자열을 정수로, 정수를 문자열로 변환하는 함수가 있다는 사실을 꼭 기억하자
3.답안 : [언어 : java ]
class Solution {
public int solution(String s) {
return Integer.parseInt(s);
}
}
4. C++ 답안
stoi()이용
#include <string>
#include <vector>
using namespace std;
int solution(string s) {
int answer = stoi(s);
return answer;
}
아스키코드 이용관련
#include <string>
#include <vector>
using namespace std;
int solution(string s) {
int answer = 0;
int m = 1;
for(int i = 0; i < s.size();i++)
{
if(s[i] >= '0' && s[i] <= '9')
{
answer *= 10;
answer += (s[i] - 48);
}
else if(s[i] == '-')
m = -1;
}
return answer*m;
}
5. C++ 문법 설명과 표현법
5_1) stoi()
문자열을 숫자로 바꿔주는 함수 (string to integer)
https://blockdmask.tistory.com/333
https://blockdmask.tistory.com/331
이 외에도
atoi atof atoi 등이 있다.
'알고리즘 > [프로그래머스]Lv.1' 카테고리의 다른 글
[프로그래머스]Lv1. 없는 숫자 더하기 (0) | 2022.10.31 |
---|---|
[프로그래머스]Lv1. 약수의 개수와 덧셈 (0) | 2022.10.31 |
[프로그래머스]Lv1. 문자열 다루기 (0) | 2022.10.31 |
[프로그래머스]Lv1. 핸드폰 번호 가리기 (0) | 2022.10.26 |
[프로그래머스]Lv1. 정수 제곱근 판별 (0) | 2022.10.26 |