강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

너무어려워님의 프로필 이미지
너무어려워

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

6-C

6-C 질문

해결된 질문

작성

·

23

0

안녕하세요 강사님 6-C 질문드립니다.

https://www.acmicpc.net/source/99232136

문제에는 정확히 M번만 통장에서 돈을 뺀다고 하여 위 코드처럼 분기를 cnt > m | cnt < m | cnt == m으로 나눠서 했을 경우 오답으로 나왔습니다.

 

그래서 혹시나 cnt > m | 나머지로 나누니 통과했는데, 문제에서는 '정확히 M번' 이라고 명시되어 있던 것 같은데, 이러면 M번보다 작아도 정답으로 처리해버리는 것이 아닌지 질문드립니다.

답변 2

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 ㅎㅎ

정확히 M번을 맞추기 위해서 남은 금액이 그날 사용할 금액보다 많더라도 남은 금액은 통장에 집어넣고 다시 K원을 인출할 수 있다.

-> 문제 지문을 보면 다음과 같이 M번을 맞추기 위해서 입금, 인출을 맞출 수 있다고 되어있습니다. 이 때문에 cnt <= M을 기반으로 로직을 구축해도 됩니다.

        else{
            r = mid-1;
            answer = min(answer, mid);
        } 

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 너무님 ㅎㅎ

그래서 혹시나 cnt > m | 나머지로 나누니 통과했는데, 문
-> 이 코드도 공유부탁드립니다.

통과한 소스코드입니다.

https://www.acmicpc.net/source/99232429

너무어려워님의 프로필 이미지
너무어려워

작성한 질문수

질문하기