알고리즘

[C++] 백준 1773번 폭죽쇼

J3SUNG 2019. 9. 26. 18:30
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;
}