Notice
Recent Posts
Recent Comments
Link
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Tags
more
Archives
Today
Total
관리 메뉴

끄적끄적

프로그래머스 lv2 [위장] C++, python - 해시 본문

코테준비/프로그래머스

프로그래머스 lv2 [위장] C++, python - 해시

alstj_성공 2022. 3. 23. 18:52

문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/42578?language=python3 

 

코딩테스트 연습 - 위장

 

programmers.co.kr

 

- 문제 풀이 -

  • 여러 종류의 옷이 있고 각 종류별로 1개 이하를 입을 수 있다면 몇 가지의 옷이 가능하냐는 문제이다.
  • 약간 이상하긴 하지만, 위 예제에 따르면 yellow_hat만 입은 것도 옷을 입은 것으로 친다고 하는 것을 보아, 여러 종류 중 하나만이라도 입은 상태도 포함하여 모든 경우의 수를 계산하는 문제이다.
  • 위의 예제 #1을 단순화하면 아래와 같은 그림이 나온다.

  • headgear는 총 2개 있으니, 스파이에게는 총 3가지의 경우의 수가 있다.
    1. 1번을 입는다.
    2. 2번을 입는다.
    3. headgear를 아무것도 입지 않는다.
  • eyewear는 총 1개 있으니, 스파이에게는 총 2가지의 경우의 수가 있다.
    1. 1번을 입는다.
    2. eyewear를 입지 않는다.
  • 그렇다면 총 3 x 2 가지의 경우의 수 인 6가지가 존재하고, 이 중 한 가지는 headgear도 입지 않고 eyewear도 입지 않은 경우가 되기 때문에 이 경우를 제외한 5가지가 정답이 되게 된다.


출처: https://coding-grandpa.tistory.com/88 [개발자로 취직하기]

 

 

1.  c++

 

 

2.  python

내가 처음에 푼 방식

 

for문에 인자를 두 개 쓸 수 없다고 생각하여 i 하나로 쓰고 i 내에서 접근했는데,

cloth, type 이렇게 인자를 두 개 쓰면 알아서 i[0]-> cloth, i[1]-> type 이렇게 할당되는 것이었다..!