๋ฌธ์ ์ค๋ช
๋ฌธ์์ด s๊ฐ ์ ๋ ฅ๋์์ ๋ ๋ค์ ๊ท์น์ ๋ฐ๋ผ์ ์ด ๋ฌธ์์ด์ ์ฌ๋ฌ ๋ฌธ์์ด๋ก ๋ถํดํ๋ ค๊ณ ํฉ๋๋ค.
- ๋จผ์ ์ฒซ ๊ธ์๋ฅผ ์ฝ์ต๋๋ค. ์ด ๊ธ์๋ฅผ x๋ผ๊ณ ํฉ์๋ค.
- ์ด์ ์ด ๋ฌธ์์ด์ ์ผ์ชฝ์์ ์ค๋ฅธ์ชฝ์ผ๋ก ์ฝ์ด๋๊ฐ๋ฉด์, x์ x๊ฐ ์๋ ๋ค๋ฅธ ๊ธ์๋ค์ด ๋์จ ํ์๋ฅผ ๊ฐ๊ฐ ์ ๋๋ค. ์ฒ์์ผ๋ก ๋ ํ์๊ฐ ๊ฐ์์ง๋ ์๊ฐ ๋ฉ์ถ๊ณ , ์ง๊ธ๊น์ง ์ฝ์ ๋ฌธ์์ด์ ๋ถ๋ฆฌํฉ๋๋ค.
- s์์ ๋ถ๋ฆฌํ ๋ฌธ์์ด์ ๋นผ๊ณ ๋จ์ ๋ถ๋ถ์ ๋ํด์ ์ด ๊ณผ์ ์ ๋ฐ๋ณตํฉ๋๋ค. ๋จ์ ๋ถ๋ถ์ด ์๋ค๋ฉด ์ข ๋ฃํฉ๋๋ค.
- ๋ง์ฝ ๋ ํ์๊ฐ ๋ค๋ฅธ ์ํ์์ ๋ ์ด์ ์ฝ์ ๊ธ์๊ฐ ์๋ค๋ฉด, ์ญ์ ์ง๊ธ๊น์ง ์ฝ์ ๋ฌธ์์ด์ ๋ถ๋ฆฌํ๊ณ , ์ข ๋ฃํฉ๋๋ค.
๋ฌธ์์ด s๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ ๊ณผ์ ๊ณผ ๊ฐ์ด ๋ฌธ์์ด๋ค๋ก ๋ถํดํ๊ณ , ๋ถํดํ ๋ฌธ์์ด์ ๊ฐ์๋ฅผ return ํ๋ ํจ์ solution์ ์์ฑํ์ธ์.
์ ์ถ๋ ฅ ์
s | result |
"banana" | 3 |
"abracadabra" | 6 |
"aaabbaccccabba" | 3 |
์ ์ถ ๋ด์ญ
def solution(s):
answer = 0
i = 0
while i < len(s):
x = s[i]
x_count = 1
not_x_count = 0
i += 1
while i < len(s):
if s[i] == x:
x_count += 1
else:
not_x_count += 1
i += 1
if x_count == not_x_count:
break
answer += 1
return answer
๋งจ ์ฒ์ s[0]์ x์ผ๋ก ์ค์ ํ๊ณ i += 1
s[1]๊ฐ x์ ๊ฐ์ผ๋ฉด x_count += 1 ์๋๋ฉด not_x_count += 1
x_count์ not_x_count์ ์๊ฐ ๊ฐ์์ง๋ฉด break ํ answer += 1
๋ค๋ฅธ ํ์ด
def solution(s):
answer = 0
sav1 = 0
sav2 = 0
for i in s:
if sav1 == sav2:
answer += 1
a = i
if i == a:
sav1 += 1
else:
sav2 += 1
return answer
ํ๋ก๊ทธ๋๋จธ์ค > ์ฝ๋ฉํ ์คํธ ์ฐ์ต > ์ฐ์ต๋ฌธ์
https://school.programmers.co.kr/learn/courses/30/lessons/140108
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก, ์ฑ์ฉ๊น์ง Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
'programmers > Lv.1' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Python] ๋์ถฉ ๋ง๋ ์ํ (0) | 2025.04.19 |
---|---|
[Python] ๋๋ง์ ์ํธ (0) | 2025.04.19 |
[Python] ์น์์ด (2) (0) | 2025.04.16 |
[Python] ์์ ์ฐพ๊ธฐ (0) | 2025.04.12 |
[Python] ๋ง์น ํ๊ธฐ (0) | 2025.04.10 |