fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. typedef long long int ll;
  4. #define fast ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
  5. #define f(i,k,n) for(ll i=k;i<n;i++)
  6. #define fr(i,n,k) for(ll i=n-1;i>=k;i--)
  7. #define pb push_back
  8. #define mxe(v) *max_element(v.begin(),v.end())
  9. #define mne(v) *min_element(v.begin(),v.end())
  10. #define bs binary_search
  11. #define lb lower_bound
  12. #define ub upper_bound
  13. #define ve vector
  14. int main() {
  15. fast
  16. ll t=1; //cin>>t;
  17. while(t--){
  18. ll n,m,k; cin>>n>>m>>k;
  19. ll a[n+1],x,y; f(i,1,n+1) {cin>>a[i];}
  20. ve<pair<ll,ll>>v[n+1];
  21. f(i,0,m) {cin>>x>>y; v[x].pb({a[y],y}); v[y].pb({a[x],x});}
  22. f(i,1,n+1) {sort(v[i].begin(),v[i].end());}
  23. f(i,1,n+1) {
  24. if(v[i].size()<k) {cout<<"-1"<<endl;}
  25. else {cout<<v[i][v[i].size()-k].second<<endl;}
  26. }
  27. }
  28. return 0;
  29. }
  30.  
Success #stdin #stdout 0s 4356KB
stdin
3 3 2
2 4 3
1 3
1 2
2 3
stdout
3
1
1