728x90
๐ ๋ฐฑ์ค 1157 - ๋จ์ด ๊ณต๋ถ
๐ก ๋์ ํ์ด
์ธ์ ๊ฐ ์ด ๋ฌธ์ ๋ฅผ ๋ณด๊ณ ํ ์๋๊ฐ ๋์ง ์์์ ๋ถ๋งํฌ๋ก ์ถ๊ฐ๋ง ํ์๋๋ฐ, ์ค๋ ๋ค์๋ณด๋๊น ํ ์ ์์๋ค. ์ฝ๊ฐ ๊น๋ค๋ก์ด ๋ฌธ์ ์ธ๋ฐ count
, index
ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด ๊ธ๋ฐฉ ํ ์ ์์๋ค. ๋จผ์ for
๋ฌธ์ ํ์ด์ ์์ฑํ๊ณ ์ดํ์ list_comprehension
์ผ๋ก ์ฝ๋๋ฅผ ๋จ์ถ์์ผฐ๋ค. ์ดํดํ๊ธฐ ์ฝ๋๋ก ์์ ์
๋ ฅ์ ๋์์๋ Mississipi
๋ฅผ ๊ธฐ์ค์ผ๋ก ์์๋ณด์.
- ์ ๋ ฅ์ ๋๋ฌธ์ or ์๋ฌธ์๋ก ํต์ผ ์ํจ๋ค. (์ดํ์ set์ผ๋ก ๋ณํํ๊ธฐ ์ํจ.)
- ์
๋ ฅ์
set
์ผ๋ก ํ ๋ณํ์ ์์ผ ์ค๋ณต์ ์ ๊ฑฐํ๋ค. - setํ์ผ๋ก for๋ฌธ์ ๋๋ ค ์ ๋ ฅ์ i๊ฐ์ด ๋ช ๋ฒ ์ฐ์๋์ง ํ์ธํ๊ณ ๋น ๋ฆฌ์คํธ์ append์ํจ๋ค.
- count_list = [1, 4, 1, 4]๊ฐ ๋์ค๊ฒ ๋๋๋ฐ ์ด๋
compress_s = ['S', 'P', 'I', 'M']
๊ฐ ๋ช ๋ฒ ์ฌ์ฉ๋๋์งcount
ํ ๊ฐ์ด๋ค. - ์กฐ๊ฑด๋ฌธ์ ํตํด ๋ง์ฝ,
[1, 4, 1, 4]
์count(max_index)
์ฆ, max๊ฐ์ด 2๊ฐ ์ด์(max๊ฐ์ด 2๊ฐ๋ฉด ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋ ์ํ๋ฒณ์ ๊ฐฏ์๊ฐ ๋์ผํ๋ค๋ ์๊ธฐ๋ค.)์ด๋ฉด?
๋ฅผ ์ถ๋ ฅํ๊ณ - ๊ทธ๋ ์ง ์์ผ๋ฉด,
count_list.index(max(count_list))
์ฆ,count_list
์คcount
๊ฐ ๊ฐ์ฅ ๋ง์ด ์ ์ธ๋index
์ ์์น๋ฅผ ๋ฐํํ๊ณ ๊ทธ ๊ฐ์count_list[index]
์ ๋ฃ์ด์ฃผ๋ฉด ์ด๋ค ๊ฐ์ด ๊ฐ์ฅ ๋ง์ด ์ฐ์๋์ง ์ ์ ์๋ค.
์ด๋,compress_s
๋list
๋ก ๋ณ๊ฒฝํด์ผindex
๋ฅผ ๋์ ํ ์ ์๋ค. - 6๋ฒ์ ๊ณผ์ ์ ํ๋์ฉ ์ดํด๋ณด๊ธฐ ์ ์ ๋จผ์ ,
set
์ ์์๊ฐ ์ ํด์ ธ์์ง ์๊ธฐ๋๋ฌธ์ ๊ฒฐ๊ณผ๊ฐ์ด ๋ฐ๋ ์๋ ์๋ค. print(count_list.index(max(count_list)))
= 1์ด๊ณ ,compress_s[1]
๊ณผ ๊ฐ๋ค.compress_s = ['A', 'B']
๋ฐ๋ผ์,compress_s[1] = B
์ด๋ค.
728x90
์กฐ๊ธ ๋ณต์กํ์ง๋ง ๊ตฌํ ๊ณผ์ ์ ์ฒ์ฒํ ์์ผ๋ก ์จ๋ด๋ ค๊ฐ๋ฉด ๊ธ๋ฐฉ ์ดํด ํ ์ ์๋ค.
s = input().upper()
compress_s = list(set(s))
count_list = [s.count(i) for i in compress_s]
if count_list.count(max(count_list)) > 1:
print('?')
else:
print(compress_s[count_list.index(max(count_list))])
๋ฐ์ํ
'Algorithm > ๋ฐฑ์ค(BOJ)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ ํ์ด์ฌ(python) ] ๋ฐฑ์ค 10214 - Baseball (0) | 2021.05.13 |
---|---|
[ ํ์ด์ฌ(python) ] ๋ฐฑ์ค 9046 - ๋ณตํธํ (0) | 2021.05.13 |
[ ํ์ด์ฌ(python) ] ๋ฐฑ์ค 2231 - ๋ถํดํฉ (1) | 2021.05.12 |
[ ํ์ด์ฌ(python) ] ๋ฐฑ์ค 3460 - ์ด์ง์ (0) | 2021.05.12 |
[ ํ์ด์ฌ(python) ] ๋ฐฑ์ค 5598 - ์นด์ด์ฌ๋ฅด ์ํธ (0) | 2021.05.11 |
๋๊ธ