나 개발자 진짜 되냐?

코딩테스트 입문 - 숨어있는 숫자의 덧셈 (2) ( isdigit() ) 본문

프로그래머스를 풀어보아요!/C++

코딩테스트 입문 - 숨어있는 숫자의 덧셈 (2) ( isdigit() )

Snow Rabbit 2026. 5. 18. 02:23

 

이번 주까지 열심히.... 열심히.. 풀면

머쓱이 100문제 풀기 성공이다!

 

그 뒤에는 다른 공부를 위해

하루에 한 문제씩만 풀듯하다 ㅎ

 

지금 문제는 사실..

어려워서 인지 씨에게 물어봤지만

풀이과정은 어느 정도 맞았기에

문법만 조금 정리하려고 한다.

 


 

 

문제는 숫자들을 다 더하는 것

 

생각했던 방식은

숫자일 경우 더해주고

다음 친구도 숫자면 앞숫자를 * 10해 주는 방향으로 진행하려고 했다.

 

잘했다고 했다.

 

풀이법도 괜찮다고 했다.

담을 변수만 하나 만들라 했다.

그리고

1. 숫자 그다음이 문자일 때 초기화 해줘

2. 마지막에 숫자로 끝나면 숫자가 남으니까 그 값을 따로 if문으로 구현 필요

 

그래서 그 힌트를 보고 작성했다.

 

 

아쉬운 점을 설명했다

 

나는 분명 숫자 다음에 문자가 나올 걸 생각해서 if문안에 if문을 또 넣은 건데

첫 번째 if문에서 이미 0부터 9까지라 해놓고

그 안에 if 10 이상이면 절대 그 계산이 될 턱이 없다는 것..

 

그러네

 

그리고 마지막에 if문까지 안 써도 되긴 한다.

그냥 answer +=num; 해줘도 되긴 한다.

 

 

그리고 최적화된 문제를 보여달라 했다.

 

isdigit()

(c - '0' >= 0 && c- '0' <= 9)

 

이랑 같은 뜻으로

이 문자가 숫자인가요? 를 표현할 때 사용한다.

#include <cctype> 사용이 필요하다

if(isdigit(c))  이렇게 된다.

 


 

 

 

사실 그

isdigit() 때문에 이 글을 쓴 거.... 기도 하다.

 

그리고 내 방식을 조금이라도 구체화하는 것도 중요하다고 생각했다.

포기하지 말자.

잘하니까