๋ฌธ์
https://school.programmers.co.kr/learn/courses/30/lessons/12924
ํ์ด
# ํ๋ก๊ทธ๋๋จธ์ค 2๋จ๊ณ - ์ซ์์ ํํ
def solution(n):
answer = 0
for i in range(1, n+1):
sum = 0
for j in range(i, n+1):
sum += j
if sum == n:
answer += 1
break
elif sum > n :
break
return answer
2์ค for๋ฌธ์ ํตํด์ ์ฒซ๋ฒ์งธ for๋ฌธ์์๋ 1๋ถํฐ ์์ํ์ฌ n๊น์ง for๋ฌธ์ด ๋๊ฒ ๋๊ณ ๋๋ฒ์งธ ์๋ for๋ฌธ์์๋ i๋ถํฐ n๊น์ง ๋๊ฒ ๋๋ค. ๋๋ฒ์งธ for๋ฌธ ์์์ sum ์ด n๊ณผ ๊ฐ๋ค๋ฉด sum = n ์ ๋ง์กฑํ๋ ๊ฐฏ์๋ฅผ ํ๋ ๋ํด์ฃผ๊ณ sum์ด n๋ณด๋ค ํฌ๋ค๋ฉด ๊ทธ ์ซ์๋ ๋์ด์ sum = n์ ๋ง์กฑํ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ฒ์จฐ์ ์๋ for๋ฌธ์ ํ์ถํ๋๋ก ๊ตฌํํ์๋ค.
1. 1+2+3+4+5 = 15 (o)
2. 2+3+4+5+6 > 15 (x)
3. 3+4+5+6 > 15 (x)
4. 4+5+6 = 15 (o)
5. 5+6+7 > 15 (x)
.
.
.
๋ค๋ฅธ์ฌ๋์ ํ์ด
๋์ ํ์ด์๋ ๋ฌ๋ฆฌ ์๊ฐ๋ ํจ์ฌ ๋น ๋ฅธ ์ฝ๋์ด๊ณ ์ด๋ฌํ ์ํ์ ์ ๊ทผ์ ํตํด ๊ณต์์ ์ป์ด๋ด๊ณ ๋ ์ฌ์ด ๋ฐฉ๋ฒ์ด ์์์ง๋ง ์๊ฐํ์ง ๋ชปํ์๋ค. ๋ณด๊ณ ๋๋ฉด ์์ง๋ง ๋ณด๊ธฐ ์ ์๋ ๊ธฐ์ต๋ ์๋๋๊ฒ ์ฝ๋ฉํ ์คํธ์ธ ๊ฒ ๊ฐ๋ค.. ์กฐ๊ธ ๋ ๋ฌธ์ ๋ฅผ ํ๋ ์๊ฐ ๋ณต์ก๋๋ฅผ ์๊ฐํ๊ณ ์ฌ๋ฌ๋ฐฉ๋ฉด์ผ๋ก ์ ๊ทผ์ ํด๋ด์ผ ๊ฒ ๋ค.
'๐๏ธ Algorithm > โฌ ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Programmers] [2017 ํ์คํ์ด] [Python] Level2_์ง์ง์ด ์ ๊ฑฐํ๊ธฐ (0) | 2022.10.12 |
---|---|
[Programmers] [์์ ํ์] [Python] Level2_์นดํซ (0) | 2022.10.09 |
[Programmers] [์คํ/ํ] [Python] Level2_์ฌ๋ฐ๋ฅธ ๊ดํธ (0) | 2022.10.06 |
[Programmers] [์ฐ์ต ๋ฌธ์ ] [Python] Level2_์ต์๊ฐ ๋ง๋ค๊ธฐ (0) | 2022.10.06 |
[Programmers] [์ฐ์ต ๋ฌธ์ ] [Python] Level2_124 ๋๋ผ์ ์ซ์ (0) | 2022.04.27 |