๋ฌธ์์ด ์ค ๊ฐ์ฅ ๋ง์ ์ํ๋ฒณ ์ฐพ๊ธฐ
my_str = input().strip()
res = ""
arr = [0 for i in range(26)]
for i in my_str:
# ord(alphabet) : ์ํ๋ฒณ์ ์์คํค์ฝ๋ ๊ฐ์ผ๋ก ๋ณํ ( a -> 97 )
arr[ord(i) - 97] += 1
for i in range(26):
if arr[i] == max(arr):
res += chr(i+97)
print (res)
์ ๋ ฅ๋ ๋ฌธ์์ด์์ ๊ฐ์ฅ ๋ง์ ์ํ๋ฒณ์ ์ฌ์ ์์ผ๋ก ์ถ๋ ฅํ๋ ์์ ์ด๋ค.
ordํจ์๋ฅผ ์ฌ์ฉํ์ฌ ASCII์ฝ๋ ๊ฐ๊ณผ ์ ์์ฐ์ฐ์ผ๋ก ๊ตฌํํ ์์ค์ฝ๋์ด๋ค.
๋ฆฌ์คํธ ๋ด ์ค๋ณต ์์์ ๊ฐฏ์ ๊ตฌํ๊ธฐ
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 7, 9, 1, 2, 3, 3, 5, 2, 6, 8, 9, 0, 1, 1, 4, 7, 0]
answer = {}
for number in my_list:
try:
answer[number] += 1
except KeyError:
answer[number] = 1
print(answer[1]) # = 4
print(answer[3]) # = 3
print(answer[100]) # = raise KeyError
์ ์์ ์ ๋ค๋ฅด๊ฒ ์ฃผ์ด์ง ๋ฆฌ์คํธ ๋ด์ ์์๋ค์ ๊ฐ ๊ฐ์๋ฅผ ์ ์ฅํ๋ ๋ฆฌ์คํธ๋ฅผ ๋ง๋ค์ด
1์ด ๋ช๊ฐ์ธ์ง ์ฐพ๊ฑฐ๋, 3์ด ๋ช๊ฐ์ธ์ง ์ฐพ์ ์ ์๋ ๋ฆฌ์คํธ๋ฅผ ๊ตฌํํ์ฌ ์ด์ฉํ๋ ์์ ์ด๋ค.
ํ์ง๋ง, ๋ ์์ ์ ๋ฌ๋ฆฌ ํ์ด์ฌ ์ฝ๋์์๋ ์ด๋ ๊ฒ ๊ธด ์ฝ๋๋ฅผ ํจ์ถํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๋ชจ๋์ด ์๋ค.
Collections.Counter ํ์ฉํ์ฌ ๊ตฌํ
import collections
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 7, 9, 1, 2, 3, 3, 5, 2, 6, 8, 9, 0, 1, 1, 4, 7, 0]
answer = collections.Counter(my_list)
print(answer[1]) # = 4
print(answer[3]) # = 3
print(answer[100]) # = 0
Collections.Counter( ๋ฆฌ์คํธ ) ํํ๋ก ์ฌ์ฉํ๋ค.
ํ ๋ฆฌ์คํธ์ ์ ์ฅ๋ ์์๋ค์ ๊ฐฏ์๋ฅผ ์ ์ฅํ๋ ๋ฆฌ์คํธ๋ฅผ ๋ฐํํ๋ค.
์๋ฅผ๋ค์ด, my_list์๋ 1์ด๋ผ๋ ์์๊ฐ 4๊ฐ๊ฐ ์กด์ฌํ๋ค.
answer = collections.Counter(my_list)
print (answer[1])
answer[1]์๋ my_list์ 1์ด๋ผ๋ ์์์ ๊ฐฏ์๋ฅผ ์ ์ฅํ๊ณ ์๋ค.
์ฆ, 4๋ฅผ ์ถ๋ ฅํ๋ค.