[BOJ] 2292. ๋ฒ์ง(python)
๐๋ฌธ์
๐ช์์ด๋์ด
์งํฉ ๋ฌถ๊ธฐ
1์์ ์ถ๋ฐํ์ฌ ์ ๋ ฅ๊ฐ์ ๋๋ฌํ๊ธฐ ์ํด ๋ฐฉ๋ฌธํ๋ ์ต์์ ๋ฐฉ์ ๊ฐ์๋ฅผ ์ฐพ๊ธฐ ์ํด์๋ ์ ๋ ฅ๊ฐ์ด ๋ช ๋ฒ์งธ ๊ทธ๋ฃน์ ์ํ๋์ง ์์์ผํ๋ค.
[1], [2,3,4,5,6,7],[8,9,10,..,19],[20,...,37],...
์ผ๋ก ์งํฉ์ด ๋ฌถ์ธ๋ค. ๊ฐ ์งํฉ์ ์ฒซ ๋ฒ์งธ ์๋1,2,8,20,...
์ผ๋ก1,6,12,18,...
์ฉ ๋์ด๋๋ค. ์ ์ฒซ๋ฒ์งธ ์ซ์+6(n-2) ์ ๊ท์น์ฑ์ด ์๋ค.์ ๋ ฅ๊ฐ์ด ์ํ๋ ์งํฉ์ ์ธ๋ฑ์ค ์ฐพ๊ธฐ
์ ๋ ฅ๊ฐ์ด ๋ค์ ์งํฉ์ ์ฒซ ๋ฒ์งธ๋ณด๋ค ์์ ๋ ์งํฉ์ ์ฐพ์ ์ ์๋ค. ๋ฐ๋ผ์ ์์ ์ ํ์์ ์ฌ์ฉํ์ฌ ์ ๋ ฅ๊ฐ๋ณด๋ค ํฐ ๊ฐ์ ์ฐพ์ ์งํฉ์ ์ธ๋ฑ์ค -1ํ๋ค.
๐ฅ์ฝ๋
1
2
3
4
5
6
7
8
9
n=int(input())
arr=[0,1,2]
if n==1: print(1)
else:
answer=3
while arr[-1]<=n:
arr.append(arr[-1] + 6*(answer-2))
answer+=1
print(answer-2)
This post is licensed under CC BY 4.0 by the author.
Comments powered by Disqus.