문제 :
풀이방법
ex ) 123 이면 1 + 2 + 3 으로 할수있다.
100 을 나눈 몫으로 1
10 을 나눈 몫으로 2
1로 나눈 몫으로 3 하지만 코드가 복잡해진다
나는 그래서 123 이면 10으로 계속 나눠서 나머지를 answer의 더하는 방식으로 풀어볼려고한다 .
10으로 계속 나누고 10으로 나눠지지않은다면 ( 9 이하) 그 남은값을 answer 과 더해주는 방식으로 푼다 .
<>코드
int solution(int n) {
int answer = 0; //n 을 나눈 나머지를 담아주는것
while (n > 9)//n 이 9보다 클때까지
{
answer += n % 10;
n /= 10;
}
return answer + n;//9이하이면 answer과 나머지n을 더해준다.
}
c 언어로 알고리즘을 풀고있는데 c++을 배워야겠다는 생각이 문득 들었다
반응형
'PS-Algorithm > Algorithm' 카테고리의 다른 글
[그리디 알고리즘] BOJ - 2875 대회 or 인턴 (0) | 2021.11.20 |
---|---|
[프로그래머스/C++] 두 개 뽑아서 더하기 (0) | 2020.12.17 |
[프로그래머스/C언어] 핸드폰 번호 가리기 (0) | 2020.12.13 |
[프로그래머스/C언어] 클라츠 추측 (0) | 2020.12.13 |
[프로그래머스/C언어] 자연서 뒤집어 배열로 만들기 (0) | 2020.12.13 |