๋ฌธ์
https://www.acmicpc.net/problem/2292
์ค๋ช
(๋ฎ์ ๋ค ํ์ด๋๊ณ ๋ค๋ฅธ์ผ์ฆ ํ๊ณ ์ฌ๋ฆฐ๋ค๋๊ฒ ๊น๋นกํ๊ณ ์ง๊ธ ์ฌ๋ฆฌ๋คโฆใ ) ์ ๋ฒ์ง ์ด๋ฏธ์ง์์ ์ค์ฌ์ (1)์ ๊ธฐ์ค์ผ๋ก ์ซ์๊ฐ์ด ์ ๋ ฅ๋๋ฉด ๊ทธ ์ค์ฌ์ ์์ ์ ๋ ฅ๋๊ฐ๊น์ง์ ์ต๋จ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ๋ค. ๋ญ๊ฐ ๋๊ฐ ๋ดค์๋๋ ๊ณผ์ฐ ์ด๊ฒ ๋ธ๋ก ์ฆ ๋จ๊ณ๊ฐ ๋ง๋๊ฑด๊ฐ ์์ฌ์ด ๋ค์๋๋ฐ ์ด ๋ฌธ์ ๊ฐ ๋ธ๋ก ์ฆ ๋ ๋ฒจ์ธ ๊ฒฐ์ ์ ์ธ ์ด์ ๊ฐ ์๋ง ์ถ๋ฐ์ ์ด ์ค์ฌ์ ์ผ๋ก๋ง ๊ณ ์ ๋์ด์๋ค๋ ์ ์ธ ๊ฒ ๊ฐ๋ค. ๋ง์ฝ ํ์ ์ด ์ค์ฌ์ ์ ๊ณ ์ ๋์ง ์๊ณ ๋์ ์ด ์ ๋ ฅ๋๋๋ก ํ์๋ค๋ฉด ๋์ด๋๊ฐ ์ฌ๋ผ๊ฐ์ ๋ฏ ํ๋ค. ์ผ๋จ ์ด ๋ฒ์ง์ ๊ท์น์ ํ์ ํ๋ฉด ๋ฌธ์ ์์ฒด๋ ์ด๋ ต์ง ์์ผ๋ฉฐ ์์ค์ฝ๋๋ ์๊ฐ๋ณด๋ค ์งง์ ๊ฒ์ ํ์ธํ ์ ์๋ค. ์ค์ฌ์ ๋๋ฌ์ธ๋ ๋ฒ์ง 6 ๊ฐ, ๊ทธ 6 ๊ฐ๋ฅผ ๋๋ฌ์ธ๋๊ฒ 12 ๊ฐ, ๋ ๊ทธ๊ฑธ ๋๋ฌ์ธ๋๊ฒ 18 ๊ฐ๋ก 6 ๊ฐ์ฉ ๋ฐ๊นฅ์ชฝ ๋ฒ์ง์ด ์ฆ๊ฐํ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค. ๋ฐ๋ผ์ ์ด๋ฅผ for๋ฌธ์ ์ด์ฉํด ๊ฒ์ฆํ๋๋ก ํ๋ฉด ๊ต์ฅํ ์ฝ๊ฒ ํ ์ ์๋ ๋ฌธ์ ์๋ค.
์ฝ๋
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int n,i,j=1;
scanf("%d", &n);
for (i = 1; j+1 <= n; i++)
j += 6 * i;
if (n == 1)
i = 1;
printf("%d", i);
return 0;
}