강의

멘토링

로드맵

Inflearn brand logo image

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

김요셉님의 프로필 이미지
김요셉

작성한 질문수

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

1-J

1-J 질문 있습니다!

작성

·

367

0

http://boj.kr/4516fd66d5684686b59f6a6817d76f45

선생님께서 짜주신 코드에서 입력 부분은 같습니다.

그 다음 저는 입력 받은 맵에서

종류 : 갯수로 맵을 구성해서 경우의 수를 (종류*갯수)로 하고 -1을 했는데 문제에서 보여준 테스트 케이스는 통과하는데 틀렸다고 뜨네요..

혹시 어느 부분이 문제인지 알 수 있을까요??

답변 2

0

김요셉님의 프로필 이미지
김요셉
질문자

Sum *= r 은

이전에 el.second를 더해주고

r을 곱해서 (종류 × 옷의 총 갯수) 해주기 위함입니다.

그리고 sum != 1은 만약 종류가 한가지라면 다른 종류의 옷을 입을 수 없으니, 옷의 개수를 그대로 출력하려고 함입니다!!

만약 1가지 종류가 아니라면, 1을 빼주었습니다

그런데 이렇게 설명하고보니 무엇인 문제였는지 감이 오는 것 같습니다!!!

감사합니다

0

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

안녕하세요. 요셉님 ㅎㅎ 질문이 몇가지 있는데요.

혹시 왜 이렇게 하신건가요?

sum *= r;

        if(r != 1)
            sum--; 

앞의 코드는 어떤 의미로 저렇게 하신건가요?

김요셉님의 프로필 이미지
김요셉

작성한 질문수

질문하기