#include #define MAXN 100001 using namespace std; int p[MAXN],pans=0; pair p1[MAXN],p2[MAXN],p3[MAXN]; vector zab[MAXN]; int ans[MAXN]; bool g[MAXN]; int main(){ ios_base::sync_with_stdio(false); cin.tie(nullptr); freopen("dodgeball.in","r",stdin); freopen("dodgeball.out","w",stdout); int n,m; cin>>n>>m; for(int i=1;i<=n;i++){ cin>>p[i]; p1[i].first=p[i]; p1[i].second=i; } for(int i=0;i>x>>y; zab[x].push_back(y); zab[y].push_back(x); p1[x].first-=p[y]; p1[y].first-=p[x]; } p1[0]={-1*INT_MAX+1,0}; for(int i=0;i<=n;i++){ p2[i]=p1[i]; } sort(p1,p1+(1+n)); int l=0,r=n,mid; for(int i=0;i<=n;i++){ p3[i]=p2[i]; } int mnans=0; int i0; int ind=0; for(i0=0;i0<=n;i0++){ for(int i=0;i<=n;i++){ g[i]=false; } pans=0; for(int i=max(i0-1,0);i0;i--){ if(g[p2[i].second]) continue; pans+=p[p2[i].second]; // cout<<"vlizam "<0;i--){ if(g[p2[i].second]) continue; pans+=p[p2[i].second]; // cout<<"vlizam "<