#include <iostream>
#include <algorithm>
#include <set>
#include <deque>
using namespace std;
const int SIZE = 1000007;
bool v[1000007] = {};
int ans[1000007] = {};
int main(){
int n, k;
cin >> n >> k;
int arr[n];
for(int i = 0; i < n; i++){
cin >> arr[i];
v[arr[i]] = 1;
}
if(k > 0){
for(int i = 0; i < n; i++){
if(arr[i] > k) for(int j = k; j < SIZE; j += arr[i]) ans[j]++;
}
} else {
for(int i = 0; i < n; i++){
for(int j = 0; j < SIZE; j += arr[i]) ans[j]++;
}
for(int i = 0; i < n; i++){
cout << (ans[arr[i]]-1) << ' ';
}
cout << '\n';
return 0;
}
for(int i = 0; i < n; i++){
cout << ans[arr[i]] << ' ';
}
cout << '\n';
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
12 ms |
5240 KB |
Output is correct |
2 |
Correct |
19 ms |
4984 KB |
Output is correct |
3 |
Correct |
457 ms |
5728 KB |
Output is correct |
4 |
Correct |
942 ms |
7416 KB |
Output is correct |
5 |
Correct |
84 ms |
5880 KB |
Output is correct |
6 |
Correct |
235 ms |
7416 KB |
Output is correct |
7 |
Correct |
83 ms |
5880 KB |
Output is correct |
8 |
Correct |
87 ms |
5816 KB |
Output is correct |
9 |
Correct |
236 ms |
7160 KB |
Output is correct |
10 |
Correct |
223 ms |
7160 KB |
Output is correct |