728x90
200만개의 배열을 만들어서
각 주기에 대해 배수를 전부 체크해줍니다.
그리고 체크된 것들을 카운트해서 출력해주었습니다.
#include <iostream>
#include <cstring>
using namespace std;
int fire[2000001];
int main(int argc, char* argv[])
{
int N, C;
int count = 0;
int student[100];
cin >> N >> C;
for (int i = 0; i < N; ++i) {
cin >> student[i];
}
for (int i = 0; i < N; ++i) {
for (int j = student[i]; j <= C; j += student[i]) {
fire[j] = 1;
}
}
for (int i = 0; i <= C; ++i) {
if (fire[i] == 1) {
++count;
}
}
cout << count << endl;
return 0;
}
'알고리즘' 카테고리의 다른 글
[C++] 백준 2799번 블라인드 (0) | 2019.09.26 |
---|---|
[C++] 백준 5397번 키로거 (0) | 2019.09.26 |
[C++] 백준 5567번 결혼식 (0) | 2019.09.26 |
[C++] 백준 1068번 트리 (0) | 2019.09.26 |
[C++] 백준 4963번 섬의 개수 (0) | 2019.09.26 |