작성
·
25
·
수정됨
답변 2
0
안녕하세요 성욱님ㅎㅎ
while(t--){
map<string, int> _map;
이렇게 맵을 테스트케이스마다 새로이 정의하기 때문에 clear는 필요없습니다.
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다.
조성욱님, 코딩 테스트에서 BOJ 9375번 (패션왕 신해빈)
문제의 주요 포인트는 각 옷의 종류별 개수를 활용해 조합의 수를 계산하는 것입니다. 문제를 푸는 과정에서 사용한 데이터 구조를 정확히 관리하는 것이 중요해요.
질문 주신 부분에 대해 설명드리겠습니다:
옷의 조합 계산:
이 문제에서는 서로 다른 옷의 종류를 착용할 경우를 조합해서 전체 경우의 수를 찾는 것이 목적입니다. 종류마다 한 개의 의상을 선택하거나 선택하지 않는 경우(아무것도 착용하지 않는 경우 포함)가 있기 때문에, 옷의 종류마다 (해당 종류의 옷 개수 + 1)로 조합할 수 있습니다. 최종 조합 수에서는 모든 종류에서 아무것도 착용하지 않은 경우(즉 모든 종류에서 선택지를 선택하지 않은 경우)를 빼주어야 합니다.
Map 초기화 (_map.clear()
):
각 테스트 케이스마다 초기화를 해주지 않으면, 이전 케이스에서 사용한 데이터가 남아 다음 케이스에 영향을 미칠 수 있습니다. 그렇기 때문에 map.clear()
는 각 테스트 케이스가 시작될 때 호출하여 이전 데이터를 제거해주는 것이 좋습니다.
만약 유사한 질문에 대해 더 많은 정보를 찾고 싶으시면, 다음의 기존 논의들을 참고하시면 좋습니다:
이 질문들에서 동일한 코딩 테스트에서 발생할 수 있는 변수 초기화 및 로직 관련 문제들에 대해 이해할 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.