문제
풀이
해당 문제의 규칙대로 반복할 시 아래 표와 같이 마지막에 열려 있는 창문들의 번호는 제곱수가 되므로 주어진 수 n이하의 제곱수의 개수를 구하면 된다.
사람 | 창문 |
1 | (1, 1, 1, 1, 1, 1, 1, 1, 1, ...) |
2 | (1, 0, 1, 0, 1, 0, 1, 0, 1, ...) |
3 | (1, 0, 0, 0, 1, 1, 1, 0, 0, ...) |
4 | (1, 0, 0, 1, 1, 1, 1, 1, 0, ...) |
5 | (1, 0, 0, 1, 0, 1, 1, 1, 0, ...) |
6 | (1, 0, 0, 1, 0, 0, 1, 1, 0, ...) |
7 | (1, 0, 0, 1, 0, 0, 0, 1, 0, ...) |
8 | (1, 0, 0, 1, 0, 0, 0, 0, 0, ...) |
9 | (1, 0, 0, 1, 0, 0, 0, 0, 1, ...) |
... | ... |
#include <iostream>
using namespace std;
int main() {
long long n;
int cnt = 0;
cin >> n;
for (int i = 1; i * i <= n; i++)
cnt++;
cout << cnt;
return 0;
}
'백준 > 약수, 배수와 소수' 카테고리의 다른 글
17103번: 골드바흐 파티션 [C++] (0) | 2023.03.29 |
---|---|
4948번: 베르트랑 공준 [C++] (0) | 2023.03.29 |
1929번: 소수 구하기 [C++] (0) | 2023.03.29 |
4134번: 다음 소수 [C++] (0) | 2023.03.29 |
2485번: 가로수 [C++] (0) | 2023.03.29 |