https://www.acmicpc.net/problem/2292
๋ฌธ์
์์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์ก๊ฐํ์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฒ์ง์ด ์๋ค. ๊ทธ๋ฆผ์์ ๋ณด๋ ๋ฐ์ ๊ฐ์ด ์ค์์ ๋ฐฉ 1๋ถํฐ ์์ํด์ ์ด์ํ๋ ๋ฐฉ์ ๋์๊ฐ๋ฉด์ 1์ฉ ์ฆ๊ฐํ๋ ๋ฒํธ๋ฅผ ์ฃผ์๋ก ๋งค๊ธธ ์ ์๋ค. ์ซ์ N์ด ์ฃผ์ด์ก์ ๋, ๋ฒ์ง์ ์ค์ 1์์ N๋ฒ ๋ฐฉ๊น์ง ์ต์ ๊ฐ์์ ๋ฐฉ์ ์ง๋์ ๊ฐ ๋ ๋ช ๊ฐ์ ๋ฐฉ์ ์ง๋๊ฐ๋์ง(์์๊ณผ ๋์ ํฌํจํ์ฌ)๋ฅผ ๊ณ์ฐํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์๋ฅผ ๋ค๋ฉด, 13๊น์ง๋ 3๊ฐ, 58๊น์ง๋ 5๊ฐ๋ฅผ ์ง๋๋ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ N(1 ≤ N ≤ 1,000,000,000)์ด ์ฃผ์ด์ง๋ค.
์ถ๋ ฅ
์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง ๋ฐฉ๊น์ง ์ต์ ๊ฐ์์ ๋ฐฉ์ ์ง๋์ ๊ฐ ๋ ๋ช ๊ฐ์ ๋ฐฉ์ ์ง๋๋์ง ์ถ๋ ฅํ๋ค.
ํ์ด
#include <iostream>
using namespace std;
int main () {
int room;
cin >> room;
if(room == 1){
cout << 1;
return 0;
}
for(int i=0; true; i++){
if(room <= 3*i*i - 3*i + 1){
cout << i;
break;
}
}
return 0;
}
ํน์ 46ํ๋ก์์ ํ๋ ธ์ต๋๋ค๊ฐ ๋ฌ๋ค๋ฉด..
7์ด๋ 13๊ฐ์ ๊ฒฝ๊ณ์ ์๋ ์๋ฅผ ๋ฃ์์ ๋ ์ ๋ต์ด ๋์ค๋์ง ํ๋ฒ ํ์ธํด๋ณด๋ผ
'๐ Cpp > [BOJ] ๋จ๊ณ๋ณ๋ก ํ์ด๋ณด๊ธฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ][C++] ๋ฐฑ์ค 2869๋ฒ : ๋ฌํฝ์ด๋ ์ฌ๋ผ๊ฐ๊ณ ์ถ๋ค (0) | 2021.10.12 |
---|---|
[BOJ][C++] ๋ฐฑ์ค 1193๋ฒ : ๋ถ์์ฐพ๊ธฐ (0) | 2021.10.12 |
[BOJ][C++] ๋ฐฑ์ค 1712๋ฒ : ์์ต๋ถ๊ธฐ์ (0) | 2021.10.09 |
[BOJ][C++] ๋ฐฑ์ค 2941๋ฒ : ํฌ๋ก์ํฐ์ ์ํ๋ฒณ (0) | 2021.10.08 |
[BOJ][C++] ๋ฐฑ์ค 5622๋ฒ : ๋ค์ด์ผ (0) | 2021.10.08 |