๐ ์๊ณ ๋ฆฌ์ฆ
์ฒ์์๋ ์ ์๋ฅผ ํ๋์ฉ ์ ๋ ฅ ๋ฐ์ผ๋ฉด ์ ๋ ฌํด์, ์์์ ๋น๊ตํ ๋ค ๊ฐ์ ๊ฐ์ด๋ฉด ์นด์ดํ ์ ํด์ฃผ๋ ๋ฐฉ๋ฒ์ ๊ณ ์ํ๋ค.
๊ทธ๋ฌ๋ ๊ฐ์ ๊ฐ์ด ๋ช๊ฐ์ธ์ง ์ธ์ด๋ณผ ๋๋ ๋์ ๋๋ฆฌ๋ฅผ ์ด์ฉํ๋ ๊ฒ ํจ์จ์ ์ด๋ค.
๊ธฐ์ค์ด ๋๋ ๊ฐ์ key์, ํด๋น ๊ฐ์๋ฅผ value์ ์ ์ฅํ๋ฉด ๋๋ค.
์ผ๋ง ์ ์ ํ์๋ https://www.acmicpc.net/problem/1159 ๋ฌธ์ ๋ ์ด์ ๋น์ทํ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ๊ฐ์ ๊ฐ ๊ฐ์ ์ธ๊ธฐ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ค.
for _ in range(n):
num = int(input())
if d.get(num): d[num] += 1
else: d[num] = 1
d[key]๋ ํด๋น ํค์ value ๊ฐ์ ์๋ฏธํ๋ค.
๋ง์ฝ์ ๋์ ๋๋ฆฌ์ num์ด ์๋ค๋ฉด ์นด์ดํธ๋ฅผ ํด์ฃผ๊ณ , ์๋ค๋ฉด ๊ฐ์ 1๋ก ๊ฐฑ์ ํด์ค๋ค.
์ด๋ ๊ฒ ํ๋ฉด ํค๋ฅผ ์ถ๋ ฅํ ๋ ๋ฐธ๋ฅ ๊ฐ์ ํตํด ํค๋ฅผ ์ถ๋ ฅํด์ผ ํ๋๋ฐ,
ํ์ด์ฌ์์๋ ์์ง ํด๋น ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์์ด์ for๋ฌธ์ผ๋ก ํค, ๋ฐธ๋ฅ ๊ฐ์ ์ง์ ์ฐพ์์ค์ผ ํ๋ค.
for k, v in d.items():
if v == idx:
ans.append(k)
์กฐ๊ฑด๋ฌธ์์ ๋ฐธ๋ฅ๊ฐ ์ํ๋ ๊ฐ(idx)์ ๊ฐ๋ค๋ฉด print or append.... ๋ฑ๋ฑ์ ์คํ ์ค๋ฅผ ์ทจํ ์ ์๋ค.
๐ป ์ต์ข ์ฝ๋
import sys
n = int(sys.stdin.readline())
d = {}
for _ in range(n):
num = int(input())
if d.get(num): d[num] += 1
else: d[num] = 1
tmp = list(d.values())
idx = max(tmp)
ans = []
for k, v in d.items():
if v == idx:
ans.append(k)
print(min(ans))
๐ ์ฐธ๊ณ ์ฝ๋
import sys
n = int(sys.stdin.readline())
d = {}
for _ in range(n):
num = int(input())
if d.get(num): d[num] += 1
else: d[num] = 1
dic = sorted(d.items(), key = lambda x: (-x[1],x[0]))
print(dic[0][0])
lambda(ํค์๋) ์ต๋ช ํจ์๋ฅผ ํตํด ๊ฐ๋จ๋ช ๋ฃํ๊ฒ ๊ตฌํํ ์ฝ๋๋ฅผ ๋ง์ด ๋ดค๋ค.
์ข ์ข ์ต๋ช ํจ์๋ฅผ ๋ง์ด ์ฌ์ฉํ๋๋ฐ, ์ด ์ ์ ๋ํด์ ๊ผญ ์ง๊ณ ๋์ด๊ฐ์ผ๊ฒ ๋ค....!
'PS > BOJ&Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค/12759] ํฑ! ํ! ํ ! - ํ์ด์ฌ (1) | 2023.01.17 |
---|---|
[๋ฐฑ์ค/1100] ํ์ ์นธ/ํ์ด์ฌ 2์ฐจ์ ๋ฆฌ์คํธ/์ฒด์คํ - ํ์ด์ฌ (0) | 2023.01.16 |
[๋ฐฑ์ค/14582] ์ค๋๋ ์ก๋ค / ์ผ๊ตฌ์ ๋ํ ์ดํด / ํ์ด์ฌ ๋ฆฌ์คํธ ๋์ ํฉ (0) | 2023.01.14 |
[๋ฐฑ์ค/7510] ๊ณ ๊ธ ์ํ (0) | 2023.01.14 |
[๋ฐฑ์ค/3986] ์ข์ ๋จ์ด / ์คํ / ์คํ ํ์ฉ๋ฒ / ์คํ ์๋ฆฌ (0) | 2023.01.13 |