제출 #440623

#제출 시각아이디문제언어결과실행 시간메모리
440623Abrar_Al_SamitSpiderman (COCI20_spiderman)C++17
70 / 70
141 ms10212 KiB
#include<bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace std; using namespace __gnu_pbds; #define debug(x) cerr << '[' << (#x) << "] = " << x << '\n'; template<class T> using ordered_set = tree<T, null_type , less<T> , rb_tree_tag , tree_order_statistics_node_update> ; const int maxn = 1e6 + 6; void PlayGround() { int n; cin >> n; int k; cin >> k; vector<int>freq(maxn), ans(maxn); vector<int>h(n); int big = 0; for(int i=0; i<n; ++i) { cin >> h[i]; freq[h[i]]++; big += h[i]>k; } for(int i=k+1; i<maxn; ++i) { for(int j=i; j+k<maxn; j+=i) { ans[j+k] += freq[i] - (j+k==i); } } for(int i=0; i<n; ++i) { cout << ans[h[i]] + (h[i]==k ? big : 0) << ' '; } cout << '\n'; #ifndef ONLINE_JUDGE cerr << "Time elapsed: " << 1.0 * clock() / CLOCKS_PER_SEC << " s.\n"; #endif } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); // #ifndef ONLINE_JUDGE // freopen("input.txt", "r", stdin); // #endif PlayGround(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...