728x90
๋ฐ์ํ
์์ด, ์กฐํฉ, ์ค๋ณต์์ด ๊ณต๋ถํด์ ์จ๋จน์ด๋ณด๋ ค๊ณ ํ๋๋ ์๋จ ใ ใ ใ
- ์คํจ + ์๊ฐ ์ด๊ณผ์ ํผํฉ... ๋จธ๋ฆฌ๊ฐ ๋ฉ์ถค ใ
- ๋ค๋ฅธ ๊ฑธ ์จ์ผ๋๋? ๋ ์๋ ๋น ๋ฅธ๊ฑด ์๋? ์ฐพ์๋ด.
- https://juhee-maeng.tistory.com/91
- ์๋ฌด๊ฒ๋ ์๋จน์ด์ ๋จธ๋ฆฌ๊ฐ ๋ฉํ๊ฑธ๊น? ๋ฏธ์ธ๋จผ์ง ๋๋ฌธ์ผ๊น?
- ํ๋ฝ์ ๋ฐฐ์ด ๋ง๋ค์ด์ ์ ์๋ผ๋ฆฌ ๋น๊ตํ๊ณ , ํ๋ฝ์์ ์ด์ ๋ฃ์ด์ ๋น๊ตํ๋๋ฐ ์๊ฐ ์ด๊ณผ๋ ๋์ค๋ฉด์ ์ ๋ต๋ ์๋ ๊ฑธ๋ก ๋์จ๋ค. ์ผ๋จ ์๊ฐ ์ด๊ณผ๋ถํฐ ์์ ๋ณผ๊น?
from itertools import combinations
def solution(scores):
์์ฐจ = len(scores)
ํ๋ฝ์ = [-99 for i in range(์์ฐจ)]
print(ํ๋ฝ์)
for ์ ์ in combinations(range(len(scores)), 2): #ํ๋ฝํ ๋๋ฃ -1์
if ํ๋ฝ์[์ ์[0]] != -1 and ํ๋ฝ์[์ ์[1]] != -1:
๊ทผ๋ฌดํ๋1, ๋๋ฃ์ ์1 = scores[์ ์[0]][0], scores[์ ์[0]][1]
๊ทผ๋ฌดํ๋2, ๋๋ฃ์ ์2 = scores[์ ์[1]][0], scores[์ ์[1]][1]
if ๊ทผ๋ฌดํ๋1 < ๊ทผ๋ฌดํ๋2 and ๋๋ฃ์ ์1 < ๋๋ฃ์ ์2:
ํ๋ฝ์[์ ์[0]] = -1
break
else:
ํ๋ฝ์[์ ์[0]] = ๊ทผ๋ฌดํ๋1 + ๋๋ฃ์ ์1
for i in range(์์ฐจ):
if ํ๋ฝ์[i] == -99:
ํ๋ฝ์[i] = scores[i][0] + scores[i][1]
print(ํ๋ฝ์)
์ํธ์์ด์ = ํ๋ฝ์.pop(0)
if ์ํธ์์ด์ == -1:
return ์ํธ์์ด์
์์ฐจ = 0
for ์ด์ in ํ๋ฝ์:
if ์ํธ์์ด์ < ์ด์ :
์์ฐจ += 1
print(ํ๋ฝ์, ์ํธ์์ด์ , ">", ์ด์ , ์์ฐจ)
return ์์ฐจ + 1
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.01ms, 10.5MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.01ms, 10.5MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.01ms, 10.5MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.02ms, 10.3MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 8 ใ ์คํจ (0.04ms, 10.6MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.04ms, 10.6MB)
ํ
์คํธ 10 ใ ์คํจ (0.09ms, 10.4MB)
ํ
์คํธ 11 ใ ์คํจ (0.28ms, 10.5MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.32ms, 10.4MB)
ํ
์คํธ 13 ใ ํต๊ณผ (0.43ms, 10.4MB)
ํ
์คํธ 14 ใ ์คํจ (0.59ms, 10.6MB)
ํ
์คํธ 15 ใ ํต๊ณผ (1.77ms, 11.1MB)
ํ
์คํธ 16 ใ ์คํจ (3.06ms, 11MB)
ํ
์คํธ 17 ใ ํต๊ณผ (5.96ms, 12MB)
ํ
์คํธ 18 ใ ํต๊ณผ (6.04ms, 12MB)
ํ
์คํธ 19 ใ ํต๊ณผ (12.82ms, 19.8MB)
ํ
์คํธ 20 ใ ํต๊ณผ (15.75ms, 19.7MB)
ํ
์คํธ 21 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
ํ
์คํธ 22 ใ ์คํจ (61.33ms, 29.3MB)
ํ
์คํธ 23 ใ ํต๊ณผ (52.49ms, 29.5MB)
ํ
์คํธ 24 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
ํ
์คํธ 25 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
- ์ด์ฌํ ์งฑ๋์ ๊ตด๋ ค๋ณด๋, ์ด์ฐจํผ ์ด์ ์ด ๋์ ์ ๋ค๋ง ๊ตฌํ๋ฉด๋๋๊น ์ด์ ์ด ๋ฎ์ ์ ๋ค์ด ํ๋ฝ์ธ์ง ์๋์ง ๊ณ์ฐํ ํ์๊ฐ ์์๋ค. ์ด์ ์ด ๋์ ์ ๋ค๋ง ์ํ ํด์ ๋ค์ ํด๋ณด์๊ตฌ...
- ํต๊ณผ๋ ๋๋๋ฐ ์๊ฐ ์ด๊ณผ์์ ๊ฑธ๋ฆฌ๋๊ตฌ๋... ํ๊ธ ๋ณ์๋ก ํด์ ๊ทธ๋ฐ๊ฐ ใ
from itertools import combinations
def solution(scores):
์ํธ์ํ๋์ ์, ์ํธ์ํ๊ฐ์ ์ = scores.pop(0)
์ํธ์์ด์ = ์ํธ์ํ๋์ ์ + ์ํธ์ํ๊ฐ์ ์
scores.sort(key=lambda x:x[0]+x[1]) #์ด์ ์ ์ ๋ ฌ
scores = [x for x in scores if x[0]+x[1] > ์ํธ์์ด์ ] #์ํธ์ ์ด์ ๋ณด๋ค ๋ฎ์ ์ ์ ์ ๊ฑฐ
len_scores = len(scores)
answer = len_scores + 1
#print(answer)
for i in range(len_scores):
ํ๋์ ์1, ํ๊ฐ์ ์1 = scores[i][0], scores[i][1]
#print("์ํธ์ํ๋์ ์, ์ํธ์ํ๊ฐ์ ์k, ํ๋์ ์1, ํ๊ฐ์ ์1:", ์ํธ์ํ๋์ ์, ์ํธ์ํ๊ฐ์ ์, ํ๋์ ์1, ํ๊ฐ์ ์1)
if ์ํธ์ํ๋์ ์ < ํ๋์ ์1 and ์ํธ์ํ๊ฐ์ ์ < ํ๊ฐ์ ์1:
return -1
for j in range(i,len_scores):
ํ๋์ ์2, ํ๊ฐ์ ์2 = scores[j][0], scores[j][1]
#print("ํ๋์ ์1, ํ๊ฐ์ ์1, ํ๋์ ์2, ํ๊ฐ์ ์2:", ํ๋์ ์1, ํ๊ฐ์ ์1, ํ๋์ ์2, ํ๊ฐ์ ์2)
if ํ๋์ ์1 < ํ๋์ ์2 and ํ๊ฐ์ ์1 < ํ๊ฐ์ ์2:
#print("๋ฑ์ ์ค๋ฆ")
answer -= 1
break
return answer
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.05ms, 10.6MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.04ms, 10.3MB)
ํ
์คํธ 11 ใ ํต๊ณผ (1.78ms, 10.3MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.25ms, 10.4MB)
ํ
์คํธ 13 ใ ํต๊ณผ (0.37ms, 10.3MB)
ํ
์คํธ 14 ใ ํต๊ณผ (0.51ms, 10.4MB)
ํ
์คํธ 15 ใ ํต๊ณผ (1.77ms, 10.8MB)
ํ
์คํธ 16 ใ ํต๊ณผ (5.97ms, 11MB)
ํ
์คํธ 17 ใ ํต๊ณผ (5.47ms, 11.8MB)
ํ
์คํธ 18 ใ ํต๊ณผ (3.59ms, 12.1MB)
ํ
์คํธ 19 ใ ํต๊ณผ (33.63ms, 19.7MB)
ํ
์คํธ 20 ใ ํต๊ณผ (22.31ms, 19.6MB)
ํ
์คํธ 21 ใ ํต๊ณผ (31.54ms, 19.3MB)
ํ
์คํธ 22 ใ ํต๊ณผ (527.02ms, 29.7MB)
ํ
์คํธ 23 ใ ํต๊ณผ (418.40ms, 29.4MB)
ํ
์คํธ 24 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
ํ
์คํธ 25 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
- ํฐ ๊ฐ๋ถํฐ ๊ฑฐ๊พธ๋ก ๋น๊ตํ๋ฉด ์ข ๋ ๋นจ๋ผ์ง์ง ์์๊น?
- ์๋๋ค.. ์ด๋ค ์์น์ ๋ญ๊ฐ ์์์ง ๋ชจ๋ฅด๋๊น ์๋๋?
from itertools import combinations
def solution(scores):
์ํธ์ํ๋์ ์, ์ํธ์ํ๊ฐ์ ์ = scores.pop(0)
์ํธ์์ด์ = ์ํธ์ํ๋์ ์ + ์ํธ์ํ๊ฐ์ ์
scores.sort(key=lambda x:x[0]+x[1]) #์ด์ ์ ์ ๋ ฌ
scores = [x for x in scores if x[0]+x[1] > ์ํธ์์ด์ ] #์ํธ์ ์ด์ ๋ณด๋ค ๋ฎ์ ์ ์ ์ ๊ฑฐ
len_scores = len(scores)
answer = len_scores + 1
#print(answer)
for i in range(len_scores):
ํ๋์ ์1, ํ๊ฐ์ ์1 = scores[i][0], scores[i][1]
#print("์ํธ์ํ๋์ ์, ์ํธ์ํ๊ฐ์ ์k, ํ๋์ ์1, ํ๊ฐ์ ์1:", ์ํธ์ํ๋์ ์, ์ํธ์ํ๊ฐ์ ์, ํ๋์ ์1, ํ๊ฐ์ ์1)
if ์ํธ์ํ๋์ ์ < ํ๋์ ์1 and ์ํธ์ํ๊ฐ์ ์ < ํ๊ฐ์ ์1:
return -1
for j in reversed(range(i,len_scores)):
ํ๋์ ์2, ํ๊ฐ์ ์2 = scores[j][0], scores[j][1]
#print("ํ๋์ ์1, ํ๊ฐ์ ์1, ํ๋์ ์2, ํ๊ฐ์ ์2:", ํ๋์ ์1, ํ๊ฐ์ ์1, ํ๋์ ์2, ํ๊ฐ์ ์2)
if ํ๋์ ์1 < ํ๋์ ์2 and ํ๊ฐ์ ์1 < ํ๊ฐ์ ์2:
#print("๋ฑ์ ์ค๋ฆ")
answer -= 1
break
return answer
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.02ms, 10.3MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.02ms, 10.6MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.06ms, 10.5MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.06ms, 10.4MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.60ms, 10.4MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.25ms, 10.6MB)
ํ
์คํธ 13 ใ ํต๊ณผ (0.25ms, 10.4MB)
ํ
์คํธ 14 ใ ํต๊ณผ (0.36ms, 10.4MB)
ํ
์คํธ 15 ใ ํต๊ณผ (1.59ms, 10.9MB)
ํ
์คํธ 16 ใ ํต๊ณผ (2.45ms, 11.3MB)
ํ
์คํธ 17 ใ ํต๊ณผ (5.93ms, 11.8MB)
ํ
์คํธ 18 ใ ํต๊ณผ (4.31ms, 12MB)
ํ
์คํธ 19 ใ ํต๊ณผ (30.54ms, 19.8MB)
ํ
์คํธ 20 ใ ํต๊ณผ (32.83ms, 19.7MB)
ํ
์คํธ 21 ใ ํต๊ณผ (20.23ms, 19.2MB)
ํ
์คํธ 22 ใ ํต๊ณผ (170.26ms, 29.8MB)
ํ
์คํธ 23 ใ ํต๊ณผ (96.49ms, 29.2MB)
ํ
์คํธ 24 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
ํ
์คํธ 25 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
- ํจ์ ์ฐพ์๋ค? ์ํธ๋ง ๋ค์ด์๋ ๋ฐฐ์ด์ ์ฃผ๋๊ตฌ๋?
- ๊ทผ๋ฐ ๊ทธ๋ฌ๋ฉด ๋๋ฃ ํ๊ฐ ์ ์๋ฅผ ์ด๋ป๊ฒ ๋ฐ๋? ๋๋ฃ๊ฐ ์๋๋ฐ? ์ฐ๋ ๊ธฐ ํจ์ ์ด๋ค ใ ใ ใ
- ํ์ง๋ง ํต๊ณผ ๋ชปํจ...?
from itertools import combinations
def solution(scores):
์ํธ์ํ๋์ ์, ์ํธ์ํ๊ฐ์ ์ = scores.pop(0)
์ํธ์์ด์ = ์ํธ์ํ๋์ ์ + ์ํธ์ํ๊ฐ์ ์
scores = [x for x in scores if x[0]+x[1] > ์ํธ์์ด์ ] #์ํธ์ ์ด์ ๋ณด๋ค ๋ฎ์ ์ ์ ์ ๊ฑฐ
scores.sort(key=lambda x:x[0]+x[1], reverse=True) #ํฐ ๊ฐ๋ถํฐ
if len(scores) == 0: #ํจ์ ์ด ์ด๊ฑฐ์์ด? ใ
ก.ใ
ก;
return 1
for i in range(len(scores)):
ํ๋์ ์1, ํ๊ฐ์ ์1 = scores[i][0], scores[i][1]
if ์ํธ์ํ๋์ ์ < ํ๋์ ์1 and ์ํธ์ํ๊ฐ์ ์ < ํ๊ฐ์ ์1:
return -1
i = 0
while i < len(scores)-1:
for j in reversed(range(len(scores))):
ํ๋์ ์1, ํ๊ฐ์ ์1 = scores[i][0], scores[i][1]
ํ๋์ ์2, ํ๊ฐ์ ์2 = scores[j][0], scores[j][1]
์ด์ 1 = ํ๋์ ์1 + ํ๊ฐ์ ์1
์ด์ 2 = ํ๋์ ์2 + ํ๊ฐ์ ์2
#print(์ด์ 1, ํ๋์ ์1, ํ๊ฐ์ ์1, ์ด์ 2, ํ๋์ ์2, ํ๊ฐ์ ์2)
if ์ด์ 1 > ์ด์ 2 + 1:
if ํ๋์ ์1 > ํ๋์ ์2 and ํ๊ฐ์ ์1 > ํ๊ฐ์ ์2:
scores.pop(j)
#print(scores)
i += 1
return len(scores) + 1
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.00ms, 10.4MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.02ms, 10.5MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.00ms, 10.6MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.01ms, 10.6MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.34ms, 10.4MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.07ms, 10.3MB)
ํ
์คํธ 13 ใ ํต๊ณผ (0.08ms, 10.2MB)
ํ
์คํธ 14 ใ ํต๊ณผ (0.31ms, 10.5MB)
ํ
์คํธ 15 ใ ํต๊ณผ (0.36ms, 10.8MB)
ํ
์คํธ 16 ใ ํต๊ณผ (1.08ms, 10.7MB)
ํ
์คํธ 17 ใ ํต๊ณผ (0.69ms, 11.7MB)
ํ
์คํธ 18 ใ ํต๊ณผ (1.39ms, 11.4MB)
ํ
์คํธ 19 ใ ํต๊ณผ (3.71ms, 17.5MB)
ํ
์คํธ 20 ใ ํต๊ณผ (3.48ms, 17.8MB)
ํ
์คํธ 21 ใ ํต๊ณผ (5.89ms, 18.8MB)
ํ
์คํธ 22 ใ ํต๊ณผ (22.79ms, 25.7MB)
ํ
์คํธ 23 ใ ํต๊ณผ (12.27ms, 25.7MB)
ํ
์คํธ 24 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
ํ
์คํธ 25 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
- ์ด์ ๋จ์ ๊ฑด ๋ ๋น ๋ฅธ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ก ๋ฐ๊ฟ๋ณด๋ ๊ฑฐ? heapq์๋... ๊ทธ๊ฒ๋ ์๋ค๋ก๋ง ๋บ ์ ์๊ณ ...
- ์๋ฃ ๊ตฌ์กฐ ๋ฐ๊ฟ๋ ์์ฉ์ด ์๋ค. ๊ทธ๋ฌ๋ฉด ๋ญ๋ค? ์ํ ์์ ๋ค. ์ํ ใ ก.ใ ก;
def solution(scores):
์ํธ์ํ๋์ ์, ์ํธ์ํ๊ฐ์ ์ = scores.pop(0)
์ํธ์์ด์ = ์ํธ์ํ๋์ ์ + ์ํธ์ํ๊ฐ์ ์
scores = [x for x in scores if sum(x) > ์ํธ์์ด์ ] #์ํธ์ ์ด์ ๋ณด๋ค ๋ฎ์ ์ ์ ์ ๊ฑฐ
scores.sort(key=lambda x:sum(x), reverse=True) #ํฐ ๊ฐ๋ถํฐ
if len(scores) == 0: #ํจ์ ์ด ์ด๊ฑฐ์์ด? ใ
ก.ใ
ก;
return 1
for i in scores:
if ์ํธ์ํ๋์ ์ < i[0] and ์ํธ์ํ๊ฐ์ ์ < i[1]:
return -1
i = 0
while i < len(scores)-1:
ํ๋์ ์1, ํ๊ฐ์ ์1 = scores[i][0], scores[i][1]
j = i + 1
while j < len(scores):
ํ๋์ ์2, ํ๊ฐ์ ์2 = scores[j][0], scores[j][1]
if ํ๋์ ์1 > ํ๋์ ์2 and ํ๊ฐ์ ์1 > ํ๊ฐ์ ์2:
scores.pop(j)
else:
j += 1
i += 1
return len(scores) + 1
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (0.01ms, 10.2MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.01ms, 10.5MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.01ms, 10.6MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.01ms, 10.5MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.01ms, 10.5MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.02ms, 10.2MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.02ms, 10.5MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.22ms, 10.4MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.10ms, 10.4MB)
ํ
์คํธ 13 ใ ํต๊ณผ (0.11ms, 10.5MB)
ํ
์คํธ 14 ใ ํต๊ณผ (0.18ms, 10.4MB)
ํ
์คํธ 15 ใ ํต๊ณผ (0.49ms, 10.9MB)
ํ
์คํธ 16 ใ ํต๊ณผ (1.03ms, 10.7MB)
ํ
์คํธ 17 ใ ํต๊ณผ (2.11ms, 11.6MB)
ํ
์คํธ 18 ใ ํต๊ณผ (2.10ms, 11.7MB)
ํ
์คํธ 19 ใ ํต๊ณผ (5.11ms, 17.7MB)
ํ
์คํธ 20 ใ ํต๊ณผ (4.98ms, 17.9MB)
ํ
์คํธ 21 ใ ํต๊ณผ (8.67ms, 18.9MB)
ํ
์คํธ 22 ใ ํต๊ณผ (47.53ms, 25.8MB)
ํ
์คํธ 23 ใ ํต๊ณผ (19.08ms, 25.7MB)
ํ
์คํธ 24 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
ํ
์คํธ 25 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
- ์ํผ ๊ทธ๋์ ๋ ์ ์ A,B๋ก (A+B, A-B) ์ข๋ฃ๋ก ์ ์ ์ฐ์ด๋ณด๋๊น ์ด๋ฐ ๊ท์น์ด ๋์จ๋ค.
- (A-B)ํ ๊ฐ์์ (A+B)ํ ์ต๋๊ฐ์ ๋ฃ๊ณ , ์ด๊ฑฐ๋ณด๋ค ์์ผ๋ฉด ํ๋ฝ ์์ผ์ ์ธ์ผํฐ๋ธ๋ฅผ ์์ฃผ๋ฉด ๋๋ค.
- (A-B)ํค๋ก ๋์ ๋๋ฆฌ๋ฅผ ๋ง๋ค์ด์ (A+B)๋ฅผ ๊ฐ์ผ๋ก ์ฐ๋ฉด ๋๋ค. ํฐ๊ฑฐ๋ถํฐ ํ ๊ฑฐ๋๊น ๊ฐฑ์ ํ ํ์๋ ์๊ณ ...
- ์๋์ผ. ๋๊ฐ์ ์ผ๋ก๋ ์ฒดํฌํด์ผ๋๊ณ , ๊ฒฐ๊ตญ ๋ค ๋ค์ ธ์ผ ํ๋ค.
- ๋ญ๊ฐ ๋ค๋ฅธ ๋ฐฉ๋ฒ ์๋?
- ์๋ฅผ ๋ค๋ฉด ํ๋ ์ ์๊ฐ ์๋ก ๊ฐ์ผ๋ฉด... ํ๋ฝ์ด ์๋๋๊น ๋์ด๊ฐ๋ฉด ๋๋ค.
- ํ๋๋ผ๋ ์๋ก ๊ฐ์ผ๋ฉด ํ๋ฝ์ด ์๋.
- ์ ์๋ฅผ ์ ์ ๋ ฌํ๋ฉด ๋ ๊ฒ ๊ฐ์๋ฐ...
a = [[9,0],[9,1],[9,2],[8,1],[8,2],[8,3],[8,10],[7,1],[7,2],[7,3],[6,6],[5,5],[3,1],[3,2]]
a.sort(key=lambda x:(-sum(x))) #ํฐ ๊ฐ๋ถํฐ
print(a)
#output
#[[8,10],[6,6],[9,2],[8,3],[9,1],[8,2],[7,3],[5,5],[9,0],[8,1],[7,2],[7,1],[3,2],[3,1]]
a.sort(key=lambda x:(-x[0],x[1])) #ํฐ ๊ฐ๋ถํฐ
print(a)
#output
#[[9,0],[9,1],[9,2],[8,1],[8,2],[8,3],[8,10],[7,1],[7,2],[7,3],[6,6],[5,5],[3,1],[3,2]]
a.sort(key=lambda x:(x[0],-x[1])) #ํฐ ๊ฐ๋ถํฐ
print(a)
#output
#[[3,2],[3,1],[5,5],[6,6],[7,3],[7,2],[7,1],[8,10],[8,3],[8,2],[8,1],[9,2],[9,1],[9,0]]
a.sort(key=lambda x:(-x[0],-x[1])) #ํฐ ๊ฐ๋ถํฐ
print(a)
#output
#[[9,2],[9,1],[9,0],[8,10],[8,3],[8,2],[8,1],[7,3],[7,2],[7,1],[6,6],[5,5],[3,2],[3,1]]
- [9,2]๋ฅผ ๋ฃ๊ณ , [9,1], [9,0]์ ๊ฐ์ 9๋๊น ๋์ด๊ฐ๊ณ ,
- ์์๋ฆฌ๊ฐ 8๋ก ๋ฐ๋๋ฉด, [9,2]๋ [8,10]์ด๋ ์ฒดํฌํด์ ๋ ๋ค ์์ผ๋ฉด ํ๋ฝ,
- ๋ ๋ค ์์ง ์์ผ๋ฉด [8,10]์ ์ถ๊ฐํ๊ณ , [8,3],[8,2],[8,1]์ ๋น๊ต
- [9,2],[8,10]์ด๋ ๋น๊ตํ๋ฉด [8,1] ํ๋ฝ.
- [7,3]์ผ๋ก ๋์ด๊ฐ์, [9,2],[8,10]์ด๋ ๋น๊ตํ๋ฉด 7,3๋ ํ๋ฝ. ๊ทธ ๋ฐ์ผ๋ก ๋ค ํ๋ฝ,
- [6,6]์ผ๋ก ๋์ด๊ฐ์, [9,2],[8,10]์ด๋ ๋น๊ตํ๋ฉด [6,6]๋ ํ๋ฝ,
- [5,5]๋ก ๋์ด๊ฐ์ ํ๋ฝ...
- ์ด๋ ๊ฒ ํ๋ฉด ์ข ์ ๊ฒ ๋น๊ตํ๋ ค๋?
def solution(scores):
์ํธ์ํ๋์ ์, ์ํธ์ํ๊ฐ์ ์ = scores.pop(0)
์ํธ์์ด์ = ์ํธ์ํ๋์ ์ + ์ํธ์ํ๊ฐ์ ์
scores = [x for x in scores if sum(x) > ์ํธ์์ด์ ] #์ํธ์ ์ด์ ๋ณด๋ค ๋ฎ๊ฑฐ๋ ๊ฐ์ ์ ์ ์ ๊ฑฐ
answer = len(scores) + 1
if len(scores) == 0: #ํจ์ ์ด ์ด๊ฑฐ์์ด? ใ
ก.ใ
ก;
return answer
scores.sort(key=lambda x:(-x[0],-x[1])) #ํฐ ๊ฐ๋ถํฐ
for ์ ์ in scores:
if ์ํธ์ํ๋์ ์ < ์ ์[0] and ์ํธ์ํ๊ฐ์ ์ < ์ ์[1]:
return -1
๋์์ ์ = []
๋์์ ์.append(scores.pop(0))
for ์ ์ in scores:
#print(scores, answer, "๋์ ", ๋์์ ์, "์ง๊ธ์ฒดํฌํ๋ ์ ์", ์ ์)
for ๋์ in ๋์์ ์:
#print(๋์ , ์ ์, end=" ")
if ๋์ [0] > ์ ์[0]:
if ๋์ [1] > ์ ์[1]: #์ด ์ ์ ๋ฐ์ผ๋ก ๋ค ํ๋ฝ
#print("ํ๋ฝ")
answer -= 1
break
else:
#print("์ ์๋ฑ๋ก")
๋์์ ์.append(์ ์)
#print(" ")
return answer
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (0.00ms, 10.4MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.00ms, 10.3MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.01ms, 10.2MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.03ms, 10.5MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.04ms, 10.3MB)
ํ
์คํธ 11 ใ ํต๊ณผ (1.81ms, 10.3MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.10ms, 10.4MB)
ํ
์คํธ 13 ใ ํต๊ณผ (0.13ms, 10.3MB)
ํ
์คํธ 14 ใ ํต๊ณผ (0.27ms, 10.4MB)
ํ
์คํธ 15 ใ ํต๊ณผ (0.52ms, 10.7MB)
ํ
์คํธ 16 ใ ํต๊ณผ (157.25ms, 16.8MB)
ํ
์คํธ 17 ใ ํต๊ณผ (1.82ms, 11.5MB)
ํ
์คํธ 18 ใ ํต๊ณผ (1.25ms, 11.4MB)
ํ
์คํธ 19 ใ ํต๊ณผ (7.50ms, 17.4MB)
ํ
์คํธ 20 ใ ํต๊ณผ (5.29ms, 17.9MB)
ํ
์คํธ 21 ใ ํต๊ณผ (8.75ms, 18.6MB)
ํ
์คํธ 22 ใ ํต๊ณผ (2588.67ms, 122MB)
ํ
์คํธ 23 ใ ํต๊ณผ (33.99ms, 27.4MB)
ํ
์คํธ 24 ใ ํต๊ณผ (97.93ms, 29.2MB)
ํ
์คํธ 25 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
- ๋ง์ง๋ง๊ฑฐ ๋๋ฌดํ๋ค. ใ ก.ใ ก;
- ์ด๋ป๊ฒ ํ์ด ใ .ใ
- ๊ทผ๋ฐ ์ ๋ง... ์ ์[0]์ ๋น๊ต ์ํด๋ ๋์ง ์๋?
- ์ ์[0]์ผ๋ก ์ ๋ ฌ๋์ด ์๊ณ , ์ ์ ์์์ง๋๊น... ์ ์[1]๋ง ๋น๊ตํ๋ฉด ๋ ๊ฒ ๊ฐ๋ค. ์๋๋ค? ใ ใ ใ
๋์ ํ ์๋๊ฒ ๋ค. ์ปจ๋ ์ข ํ์.ใ ใ ใ
์... ์ด๋ ๊ฒ ํด์ผ๋๋๊ตฌ๋...
#output
#[[9,0],[9,1],[9,2],[8,1],[8,2],[8,3],[8,10],[7,1],[7,2],[7,3],[6,6],[5,5],[3,1],[3,2]]
- ์ ์[0]์ด ๊ฐ์ ๋๋ ๊ทธ๋ฅ ๋์ด๊ฐ๊ณ , ์ ์[0]์ด ๋ฌ๋ผ์ง๋ฉด ์ ์ ๊ฐฑ์ .
- ๊ทธ๋ฌ๋ฉด ์์ํด๋ณด๋ฉด
- [9,0]์ด ์ด๊ธฐ๊ฐ
- [9,1],[9,2] ๋ 9๊ฐ ๊ฐ์ผ๋๊น ๋์์ ์๋ฅผ ๊ฐฑ์ ํ๋ฉด์ ๋์ด๊ฐ. ๋ง์ง๋ง[9,2]
- [8,1]๋ถํฐ ์ ์[0]์ด ๋ฌ๋ผ์ง. ๋ง์ง๋ง[9,2]๋ ๋น๊ตํ๋ฉด
- [8,1] ํ๋ฝ
- [8,2],[8,3],[8,10]์ํ๋ฝ, ์ ์ ๊ฐฑ์ . ๋ง์ง๋ง [8,10]
์... ์ด๋ ๊ฒ ํ๋๊ฑฐ์๊ตฌ๋. ใ .ใ
def solution(scores):
์ํธ์ํ๋์ ์, ์ํธ์ํ๊ฐ์ ์ = scores.pop(0)
์ํธ์์ด์ = ์ํธ์ํ๋์ ์ + ์ํธ์ํ๊ฐ์ ์
scores = [x for x in scores if sum(x) > ์ํธ์์ด์ ] #์ํธ์ ์ด์ ๋ณด๋ค ๋ฎ๊ฑฐ๋ ๊ฐ์ ์ ์ ์ ๊ฑฐ
answer = len(scores) + 1
if len(scores) == 0: #ํจ์ ์ด ์ด๊ฑฐ์์ด? ใ
ก.ใ
ก;
return answer
scores.sort(key=lambda x:(-x[0],x[1])) #ํฐ ๊ฐ๋ถํฐ
for ์ ์ in scores:
if ์ํธ์ํ๋์ ์ < ์ ์[0] and ์ํธ์ํ๊ฐ์ ์ < ์ ์[1]:
return -1
๋์์ ์ = []
๋์์ ์ = scores.pop(0)
for ์ ์ in scores:
if ๋์์ ์[0] == ์ ์[0]:
๋์์ ์[1] = ์ ์[1]
else:
if ๋์์ ์[1] > ์ ์[1]:
answer -= 1
else:
๋์์ ์ = ์ ์
return answer
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (0.00ms, 10.4MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.00ms, 10.2MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.01ms, 10.5MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.00ms, 10.2MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.02ms, 10.3MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.02ms, 10.2MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.35ms, 10.4MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.11ms, 10.4MB)
ํ
์คํธ 13 ใ ํต๊ณผ (0.23ms, 10.4MB)
ํ
์คํธ 14 ใ ํต๊ณผ (0.18ms, 10.3MB)
ํ
์คํธ 15 ใ ํต๊ณผ (1.11ms, 10.7MB)
ํ
์คํธ 16 ใ ํต๊ณผ (2.35ms, 10.9MB)
ํ
์คํธ 17 ใ ํต๊ณผ (0.96ms, 11.4MB)
ํ
์คํธ 18 ใ ํต๊ณผ (0.98ms, 11.4MB)
ํ
์คํธ 19 ใ ํต๊ณผ (7.07ms, 17.6MB)
ํ
์คํธ 20 ใ ํต๊ณผ (9.47ms, 17.8MB)
ํ
์คํธ 21 ใ ํต๊ณผ (9.73ms, 18.8MB)
ํ
์คํธ 22 ใ ํต๊ณผ (36.20ms, 26.7MB)
ํ
์คํธ 23 ใ ํต๊ณผ (25.55ms, 26.6MB)
ํ
์คํธ 24 ใ ํต๊ณผ (56.88ms, 28.1MB)
ํ
์คํธ 25 ใ ํต๊ณผ (20.80ms, 26.2MB)
- ์ ๋ ฌ์ ์ด๋ป๊ฒ ํ๋๊ฐ๊ฐ ๊ฐ์ฅ ์ค์ํ ๋ฌธ์ ์๋ค.
- ์๋ฑํ๊ฒ ์ ๋ ฌํด๋๊ณ , ๊ทธ ๊ตฌ์กฐ๋ก ํ๋ ค๊ณ ๋จธ๋ฆฌ๋ฅผ ์๋ฌด๋ฆฌ ๊ตด๋ ค๋ ๋์ง ์์ ๊ณ ๋ฏผํ๋ค.
- ๋ค์๋ถํฐ 2์๋ฅผ ๋น๊ตํ๋ ๋ฌธ์ ๊ฐ ๋์ค๋ฉด ๋ฌด์กฐ๊ฑด ์ ๋๋ค ํจ์๋ก ์ ๋ ฌํด์ ํธ๋ ๊ฑธ๋ก...
- ํ์ง๋ง ๋์ค์ ๋น์ทํ ๋ฌธ์ ๊ฐ ๋์ค๋ฉด ๊น๋จน๊ณ ๋ ์ฝ์งํ๊ฒ ์ง. ใ ใ ใ
๊ณ ์ํ ๋งํผ ์ ์๊ฐ ์ปค์ ๊ธฐ๋ถ์ด ์ข๋ค. +5์ ์ง๋ฆฌ ๋ฌธ์ ์๋ค๋!
728x90
๋ฐ์ํ
'๊ฒ์ ํ๋ก๊ทธ๋๋ฐ > Python ํ๋ก๊ทธ๋๋ฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค ์ ์ฐ๊ธฐ (0) | 2023.02.14 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค ๋จ์ด ํผ์ฆ (0) | 2023.02.14 |
ํ๋ก๊ทธ๋๋จธ์ค ์ด๋ชจํฐ์ฝ ํ ์ธํ์ฌ (0) | 2023.02.12 |
์ฐ์ ์์ ํ๋ฅผ ํํ, ๋ํ๋ก ๋ณ๊ฒฝ (0) | 2023.02.10 |
ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉํ ์คํธ ๊ณ ๋์ Kit (2) ํด์ (0) | 2023.02.09 |