제출 #844559

#제출 시각아이디문제언어결과실행 시간메모리
844559vjudge1Spiderman (COCI20_spiderman)C++14
70 / 70
1070 ms13836 KiB
#include <bits/stdc++.h> #pragma GCC optimize("O3") #define int long long using namespace std; template<typename T1, typename T2> ostream& operator<<(ostream& os, pair<T1, T2> p){ return os << p.first << " " << p.second; } void solve(void){ int n,k, morethank=0; cin >> n >> k; vector<int> h(n), ans(n, 0); for(auto &gh: h){ cin >> gh; if(gh>k) morethank++; } vector<int> bruh(1e6+7, 0); for(int i=0; i<n; i++) bruh[h[i]]++; for(int i=0; i<n; i++){ int gh = h[i] - k; if(gh == 0) ans[i] = morethank; for(int l=1; l*l<=gh; l++){ if(gh%l == 0){ if(l>k) ans[i]+= bruh[l]; if(l*l != gh ) if( gh/l > k ) ans[i]+= bruh[gh/l]; } } if( k==0 && h[i]>0 ) ans[i]--; } for(auto ghh: ans) cout << ghh << " "; cout << "\n"; } signed main(){ int t=1; // cin >> t; while(t--) solve(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...