본문 바로가기
c++/프로그래머스

[프로그래머스] 9로 나눈 나머지(c++)

by ilp 2023. 12. 25.
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/181914

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr



#include <string>
#include <vector>

using namespace std;

int solution(string number) {
    int answer = 0;
    for(int i=0;i<number.size();i++){
        answer+=number[i]-'0';
    }
    answer=answer%9;
    return answer;
}

 

number의 크기만큼 for문을 돌린다.

answer이라는 값이 0으로 초기화된 변수에

number[i]를 숫자로 바꾸어서 더해준다.

for문이 끝나고 answer에 answer을 9로 나눈 나머지값을 ㄴ허어준다.

참고

아스키코드를 보면 문자 '0'은 48이다.

그렇기때문에 다른 숫자 문자에서 '0'의 값을 빼주면

문자를 숫자로 바꿀 수 있다.

참고

stoi는 사용할 수 없다. '

여기선 number[i]는 문자열이 아니라 단일 문자이다.

stoi는 문자열을 정수로 바꾸어주는 함수이지

단일 문자를 숫자로는 바꿀수 없다.

그래서 나는 이 문제를 풀때 아스키 코드를 활용해서 풀었다.

이번문제는 저번에 풀었던 문제와 비슷했다.

https://iloveprogramming.tistory.com/78

 

[프로그래머스] 문자열 정수의 합(c++)

https://school.programmers.co.kr/learn/courses/30/lessons/181849 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞

iloveprogramming.tistory.com


 
반응형