set()함수를 왜 쓰는지 이해가 안됩니다 ㅜㅜ
324
작성자 없음
작성한 질문수 0
안녕하세요 강사님 강의 잘 듣고 있습니다.
코딩공부를 시작한지 별로 안되서 이상한것에 이해가 잘 안됩니다...
이해가 안되는 부분은 왜 굳이 set() 함수를 써야 하는지 입니다. (리스트를 써도 될거 같은데)
n, k = map(int, input().split())
a = list(map(int, input().split()))
res=[]
for i in range(n):
for j in range(i+1, n):
for m in range(j+1, n):
res.append(a[i]+a[j]+a[m])
res.sort(reverse=True)
print(res[k-1])
여기서 강의에서 중복 카운팅을 막기 위해서 set() 집합을 쓴다고 하셨는데 그게 이해가 안됩니다..
10개의 카드에서 3개를 뽑아서 나오는 모든 경우의 수를 res 변수에 넣는걸로 알고 있는데 그러면 3개를 뽑아서 합한 결과가 res
변수에 들어가는데 이때 값이 똑같은게 나오면 중복이 안되게 막는다는걸로 들었습니다.
근데 굳이 res변수에 들어가는 중복 값을 왜 막아야 하는지 모르겠습니다..
10개의 카드에서 3개를 뽑고 다른 경우에서 3개를 뽑았는데 우연히 중복값이 나오면 그건 상관이 없는거 아닌가요?
문제에서 "같은 숫자의 카드가 여러개 있을 수 있다"란 말은 그냥 1부터 100까지의 숫자가 랜덤으로 있다했지만 1이 10개 있을 수도 있고 그런말이라서 위의 경우랑은 별개인거 같습니다.
말이 좀 횡설수설한데 제가 이해 안되고 있는 부분이 어디인지 알려주십시오..!
만약 제 글을 이해 못하시겠으면 다시 써보겠습니다...... ㅠㅠㅠ
답변 2
0
안녕하세요^^
문제에서 K번째 큰수가 누구라고 했는지 잘 읽어보세요.
위에 코드처럼 res를 리스트로 한 코드가 100점 나오는지 채점해보세요. 아마 안나올 겁니다. 문제에 있는 입력예제가 답이 나왔다해서 정답코드인 것은 아닙니다.
기존에 윈도우 10으로 잘 써왔는데 윈도우 11로 바꾸고 나서 채점이 안됩니다.
0
76
2
스택에서 ')'을 만나는 경우
0
78
3
문제가 어디있나요?
0
64
2
변수 or 함수명
0
61
1
침몰하는 타이타닉 문제 질문입니다
0
56
1
AA.py 책점 에러
0
57
1
오늘 구매했는데 파이썬 자료구조 궁금한거 있으면 답변이 잘 될까요.
0
111
2
5.동전분배하기 문제 밑에코드도 정답이될까요?
0
110
1
아나그램 비교 코드
0
116
2
AA.PY파일 복사 후 채점 진행할때 오류 발생합니다.
0
160
2
문제 링크가있나여?
0
147
2
채점기 Time Limit Exceeded 오류 문의
1
163
2
동적계획법은 사용하는 문제
0
126
2
제 코드 좀 봐주세요
0
148
1
예외가 존재할 가능성?
0
97
1
3번이 안풀립니다
0
93
0
5번 틀림
0
113
0
오류원인?
0
98
0
리스트 선언
0
106
1
침몰하는 타이타닉(그리디) 문제 질문
0
109
1
알고리즘
0
69
1
코딩테스트
0
92
1
DFS 순서 질문드립니다.
0
124
2
left, right를 사용한 풀이법에 대한 질문입니다
0
91
1





