์ธ์ฌ๊ณ ๊ณผ lv3
๐๋ฌธ์ ๋งํฌ
์ฝ๋
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
def solution(scores):
answer = 0 # ์ํธ์ ๋ฑ์
front, back = scores[0]
total_score = front + back
# ์ฒซ๋ฒ์งธ ์ ์์ ๋ํด์ ๋ด๋ฆผ์ฐจ์, ๊ทธ๋์ -์ฌ์ฉ,
# ์ฒซ ๋ฒ์งธ ์ ์๊ฐ ๊ฐ์ผ๋ฉด ๋ ๋ฒ์งธ ์ ์์ ๋ํด์ ์ค๋ฆ์ฐจ์(๊ธฐ๋ณธํ)์ผ๋ก ์ ๋ ฌ
scores.sort(key=lambda x: (-x[0], x[1]))
# front ์ ์ ๊ธฐ์ค์ผ๋ก ๋ด๋ฆผ์ฐจ์ํ๋ฉด ์ธ์ผํฐ๋ธ๊ฐ ํฉ์ฐ์ ์ ๋์ ์์ผ๋ก ์ ๋ ์๋์จ๋ค.
# ๊ทธ๋์ max_back ๋ง๋ค์ด ์คฌ๊ณ , ํน์ back์ด ์ต๊ณ ์ ์ผ๋ก ๊ฐฑ์ ํ๊ณ
# total score์ธ ์ํธ์ ์๋ณด๋ค ํฌ๋ฉด ์ํธ๊ฐ ๋ฑ์ ๋ค๋ก ๋ฐ๋ฆฌ๋ ๊ฒ์ผ๋ก
max_back = 0
# ์ํธ์ ์ [2,2]๋ฅผ ๊ฐ๊ฐ front, back์ ๊ณ ์ ํด์ ์ธ๋ฑ์ค 1๋ถํฐ ๋ฐ๋ณตํ์ฌ ๋น๊ตํ์ฌ, ๋์ผ๋ฉด ๋ฑ์ ์๋ก
for a, b in scores:
if front < a and back < b:
return -1
if b >= max_back:
max_back = b
if a + b > total_score:
answer += 1
# ์ํธ ์์ ์ ํฌํจํ ๋ฑ์ ๋ฐํ์ด๋ผ +1
return answer + 1
ํ์ด
score ๋ฐฐ์ด์ ์์๋ฆฌ์ธ ๊ทผ๋ฌดํ๋ ์ ์๋ฅผ front, ๋ท์๋ฆฌ์ธ ๋๋ฃํ๊ฐ ์ ์๋ฅผ back์ผ๋ก ์ค์ ํจ
โ> 2๊ฐ ๋ํ ๊ฒ์ total_score
๋ฌธ์ ์์ ์ ์ ๋์ ์์ผ๋ก ์ธ์ผํฐ๋ธ ์ค๋คํ๋ ๋น์ฐํ ๋ด๋ฆผ์ฐจ์!, ์์ ์ ์๊ฐ ๊ฐ๋ค๋ฉด ๋๋ฒ์งธ ์ ์๋ ์ค๋ฆ์ฐจ์
์ ์ด์งธ์!
max_front๊ฐ ์๋๋ผmax_back
์ ์ผ๋๊ฐ???โ>
scores = [[2,2],[1,4],[3,2],[3,2],[2,1]]
์ฌ๊ธฐ์ ์์ ์ ์ ๊ธฐ์ค์ผ๋ก ๋ด๋ฆผ์ฐจ์ํ๋ฉด ํฉ์ฐํ ๊ฒฐ๊ณผ๊ฐ ๋์ ์ฌ๋๋ ๋ฑ์๊ฐ ๋ฎ์์ง๊ธฐ ๋๋ฌธ์ด๋ค. ๊ทธ๋์ ๋ท์ ์๊น์ง ํฉํ๊ฒ ๋ ๋์ ์์๊ฐ ๋ ์์๋๋ก, ์ผ๋จ max_back ๋ณ์๋ฅผ ์์ฑํด์ค์ํธ์ ์ [2,2]๋ฅผ ๊ฐ๊ฐ front, back์ ๊ณ ์ ํด์ ์ธ๋ฑ์ค 1๋ถํฐ ๋ฐ๋ณตํ์ฌ ๋น๊ตํ์ฌ,
๋์ผ๋ฉด ๋ฑ์ ์๋ก ๋ณด๋ด์ค๊ฑฐ๋ผ return -1 ํจ
- ๋๊ตฐ๊ฐ์ ๋๋ฃํ๊ฐ ์ ์๊ฐ ๊ธฐ์กด ๋๋ฃํ๊ฐ ์ ์๋ณด๋ค ๋๊ณ , (๊ทผ๋ฌดํ๋ + ๋๋ฃํ๊ฐ)๊ฐ ์ํธ์ 2๊ฐ ํฉ์น ์ ์๋ณด๋ค ๋์ผ๋ฉด ์ํธ๋ ๋ฑ์ ๋น ๊พธ๋จน๊ณ ๋ด๋ ค๊ฐ์ผํด์
answer += 1
์ ์์ ์ํธ ์์ ์ ํฌํจํ ๋ฑ์ ๋ฐํ์ด๋ผ
return answer +1
๋ง์ฝ return answer๋ง ์ ์ผ๋ฉด ์ํธ๋ฅผ ๋นผ๊ณ ๋ฑ์ ๋ฐํ
๋ค๋ฅธ ์ฝ๋
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def solution(scores):
answer = 1 # 1๋ช
์ ๋ฑ์๋ฅผ ์ํด ์ ์ ๊ฒ
wanho = scores[0]
sum_wanho = wanho[0] + wanho[1]
# ์์๋ฆฌ ๋ด๋ฆผ์ฐจ์, ๋ท์๋ฆฌ ์ค๋ฆ์ฐจ์
scores.sort(key = lambda x: (-x[0], x[1]))
colleague_rating_score = 0
for s in scores:
if wanho[0] < s[0] and wanho[1] < s[1]:
return -1
if colleague_rating_score <= s[1]:
if sum_wanho < s[0] + s[1]:
answer += 1
colleague_rating_score = s[1]
return answer
์ฐธ๊ณ
https://www.ai-bio.info/programmers/152995
https://cheon2308.tistory.com/entry/ํ๋ก๊ทธ๋๋จธ์ค-Lv-3-ํ์ด์ฌ-์ธ์ฌ๊ณ ๊ณผ