1. ๋ฌธ์ ์ค๋ช
- ์
๋ ฅ
- ์ ์ ID ์ ๋ณด
- ์ ์ ๊ฐ ์ ๊ณ ํ ID ํ์
- k : k๋ฒ์ด์ ์ ๊ณ ๋นํ๋ฉด ๊ฒ์ํ ์ด์ฉ์ ์ง
- ์ถ๋ ฅ : ์ ์ ๋ณ๋ก ์์ ์ด ์ ๊ณ ํ ์ ์ ์ค, ์ต์ข ์ด์ฉ์ ์ง๋ฅผ ๋นํ ์ ์ ์ ๋ช ์๋ฅผ ์ธ์ ๋ฆฌ์คํธ ํํ๋ก return
2. ์ฝ๋
solution1.py
def solution(id_list, report, k):
db = {name:[] for i, name in enumerate(id_list)}
reports = {name:0 for i, name in enumerate(id_list)}
for re in set(report):
user = re.split(" ")[0]
reported_user = re.split(" ")[1]
db[user].append(reported_user)
reports[reported_user] +=1
answer = [0 for _ in range(len(id_list))]
for key, values in db.items():
for value in values:
if reports[value] >=k:
answer[id_list.index(key)] += 1
return answer
3. ํ๊ณ
- ํ ์ ์ ๋ฅผ ์ฌ๋ฌ ๋ฒ ์ ๊ณ ํ ๊ฒฝ์ฐ, ๋์ผํ ์ ์ ์ ๋ํ ์ ๊ณ ํ์๋ 1ํ๋ก ์ฒ๋ฆฌํด์ผํ๋ค.
- ์ ๊ณ ๋ ํ์๋ถ๋ถ์์ report ๋ชฉ๋ก์์ฒด๋ฅผ set()ํด์ฃผ๋ฉด๋๋๋ฐ, if๋ฌธ์ผ๋ก ์ด๋ฏธ ํ ๋ฒ ์ ๊ณ ํ ์ ์ด ์๋ ์ ์ ์ธ์ง๋ฅผ ๊ฒ์ฌํ์๋ค๊ฐ ์์ ํ์ด์ ์์ ํ๋ค.
- ๋์ ๋๋ฆฌ๋ฅผ ์ฌ์ฉํ ๋, value๊ฐ์ ๋ฆฌ์คํธ๋ก ํ๊ณ ์ฌ๋ฌ๊ฐ์ ๊ฐ์ ์ถ๊ฐํ๊ณ ์ถ์ ๋๋ ์ด๊ธฐํ ์์ ์ง์ ํด์ฃผ๋ฉด ํธํ๋ค.
'Algorithm > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ์์น ์ต๋ํ (Python) (0) | 2022.02.03 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ํํ (Python) (0) | 2022.01.26 |
[ํ๋ก๊ทธ๋๋จธ์ค] ํฌ๋ ์ธ ์ธํ๋ฝ๊ธฐ ๊ฒ์ (Python) (0) | 2022.01.11 |
[ํ๋ก๊ทธ๋๋จธ์ค] H-Index (Python) (0) | 2022.01.08 |
[ํ๋ก๊ทธ๋๋จธ์ค] K๋ฒ์งธ ์ (Python) (0) | 2022.01.07 |