강의

멘토링

커뮤니티

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

kimseunghwan7777님의 프로필 이미지
kimseunghwan7777

작성한 질문수

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

질문

작성

·

153

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

  1. 교안 48p에서 맵에서 [ ]를 사용하는 경우, 사용과 동시에 생성된다는 것은 이해를 했는데, [다만 앞의 코드는 해당 키값에 0이 아닌 값이 들어갈 때 활용이 가능합니다. 만약 문제에서 키에 0이 들어가는 경우 앞의 코드는 활용이 불가능합니다.] 라는 부분이 어떤 의미인지 잘 모르겠습니다. mp[1]==0 이라고 선언되는 동시에 mp[1]=0으로 명명된다는 것은 알겠는데, mp[0]인 경우에는 무슨 문제가 발생하는 건가요? 세부 설명 부탁드립니다!

 

  1. 교안에서 struct 부분에서 커스텀한 정렬이 필요한 경우에 질문있습니다. struct 내부에 연산자<를 오버로딩만 했는데, 자동적으로 정렬이 되는 것인지 궁금합니다.

    (앞의 sort(v.begin(),v.end(),less<int>())이런 식으로 세번째에 기준을 적었는데, struct를 이용한 커스텀한 정렬은 세번째에 기준을 적지 않는 것에 의문이 들어 질문드립니다.)

답변 1

1

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

안녕하세요. kim님 ㅎㅎ

mp[1]로 참조 하면 >> mp[1] = 0이 할당이 됩니다. 또한 설명은 키가 아니라 "맵의 키 - 값에서 값에 0이 들어가는 경우에는 앞의 코드로 쓰는게 좋습니다." 값이죠? 자동으로 0이 할당되니 문제에서 0을 할당하지 말아야 하는 경우에는 쓰면 안된다는 말이에요.

 

struct에 정렬순서를 선언했기 때문에 괜찮습니다. 자동으로 해당 오버로딩셋팅으로 정렬됩니다.

 

또 질문 있으시면 언제든지 질문 부탁드립니다.

감사합니다.

강사 큰돌 올림.

 

kimseunghwan7777님의 프로필 이미지
kimseunghwan7777

작성한 질문수

질문하기