๐ก ํด๊ฒฐ๊ณผ์
1. ๋์๋ฌธ์ ๊ตฌ๋ณ์์ด ์นด์ดํธ๋ฅผ ํด์ผํ๊ณ , ๋๋ฌธ์๋ก ์ถ๋ ฅํด์ผํ๋ ๐๐ป upper()
2. ์ถ๋ ฅ
- ์ ์ผํ ์ต๋น๋จ์ด๋ผ๋ฉด : ๋๋ฌธ์
- ์ ์ผํ์ง ์๋ค๋ฉด : ?
from collections import Counter
#๋๋ฌธ์๋ก ์นํ ํ ๋ฌธ์๋ณ ์นด์ดํธ
#value๊ฐ ๊ฐ๋ค๋ฉด -> ?์ถ๋ ฅ
#๋น๋์ ๊ฐ์ฅ ํฐ ๋ฌธ์ ๋๋ฌธ์๋ก ์ถ๋ ฅ
word=input().upper()
word_counter=Counter(word)
#๋น๋์๊ฐ ๊ฐ์ฅ ํฐ value๋ฅผ ์ฐพ์์ 1๋ ๊ฐ์์งํ๋จ
#์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ
value_list = sorted(word_counter.items(), key=lambda x:x[1],reverse=True)
#max๊ฐ์ด ์ ์ผํ์ง ํ์ธ
if len(value_list)==1:
print(value_list[0][0])
else:
if value_list[0][1]==value_list[1][1]:
print('?')
else:
print(value_list[0][0])
โ๏ธ ์ถ๋ ฅํ๊ณ ๋ณด๋ ๋ง์น Counter๊ฐ ์ค๋ฆ์ฐจ์ value๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํด์ฃผ๋๊ฑด๊ฐ ํ์ง๋ง ์๋๋ผ๊ณ ํ๋ค..
๊ทธ๋์ most_common()๊ฐ ์กด์ฌํ๋๊ฒ...
โ most_common(n)
print(Counter(s).most_common()) #[('I', 4), ('S', 4), ('M', 1), ('P', 1)]
most_common์ ์ต๋น๊ฐ n๊ฐ๊น์ง ํํํํ์ ๋ด๋ฆผ์ฐจ์ ๋ฆฌ์คํธ๋ก ๋ง๋ค์ด์ค!
most_common๋์ , sorted๋ฅผ ์ฌ์ฉํด์ x[1]=๋น๋์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ์ ํด์ค๋ค,
์ ์ผํ ์ต๋น๊ฐ์ธ์ง ํ์ธํ๊ธฐ ์ํด ๋จ์ํ๊ฒ ๋๋ฒ์งธ ๋น๋์๊ฐ๊ณผ ๋น๊ตํ๋ ๋ฐฉ์์ ์ ํํ๋ค.
์ด ๋ฐฉ๋ฒ์ word๊ฐ 1๊ฐ๋ง ์กด์ฌํ ๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ๊ธฐ ๋๋ฌธ์, ์ถ๊ฐ์ ์ธ ์กฐ๊ฑด๋ฌธ์ ์ฌ์ฉํด์ฃผ์๋ค.
๐ง Refactoring
from collections import Counter
s=input().upper()
c_list=Counter(s).most_common() #[('I', 4), ('S', 4), ('M', 1), ('P', 1)]
#์ ์ผํ ์ต๋น๊ฐ ์ฌ๋ถ
if len(c_list)>1 and c_list[0][1]==c_list[1][1]:
print('?')
else:
print(c_list[0][0])
'๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค-python] ์๊ณ ๋ฆฌ์ฆ์ ์ํ ์๊ฐ 2,4,6๋ฒ (0) | 2024.05.31 |
---|---|
[๋ฐฑ์ค-Python] ์๋ก ๋ค๋ฅธ ๋ถ๋ถ ๋ฌธ์์ด์ ๊ฐ์ : 11478๋ฒ (0) | 2024.05.30 |
[๋ฐฑ์ค-Python] ์ฌ๋ฆผํฝ : 8979๋ฒ (0) | 2024.05.29 |
[๋ฐฑ์ค-Python] ์ฃผ์ฌ์ ์ธ๊ฐ : 2480๋ฒ (0) | 2024.05.29 |
[๋ฐฑ์ค-Python] ๋ถ์์ฐพ๊ธฐ : 1193๋ฒ (0) | 2024.05.29 |