Submission #844448

#TimeUsernameProblemLanguageResultExecution timeMemory
844448vjudge1Spiderman (COCI20_spiderman)C++17
70 / 70
55 ms10320 KiB
// author: erray
#include <bits/stdc++.h>

#ifdef DEBUG
  #include "debug.h"
#else
  #define debug(...) void(37)
#endif

using namespace std;

int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  int N, K;
  cin >> N >> K;
  vector<int> H(N);
  for (int i = 0; i < N; ++i) {
    cin >> H[i];
  }
  int MAX = *max_element(H.begin(), H.end());
  vector<int> freq(MAX + 1);
  for (auto x : H) {
    freq[x] += 1;
  }
  vector<int> divs(MAX + 1);
  for (int i = K + 1; i <= MAX; ++i) {
    for (int j = 0; j <= MAX; j += i) {
      divs[j] += freq[i];
    }
  }
  for (int i = 0; i < N; ++i) {
    cout << (H[i] < K ? 0 : divs[H[i] - K] - (K == 0)) << " \n"[i == N - 1];
  }
}
#Verdict Execution timeMemoryGrader output
Fetching results...