This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
/******************************************************************************
Welcome to GDB Online.
GDB online is an online compiler and debugger tool for C, C++, Python, PHP, Ruby,
C#, OCaml, VB, Perl, Swift, Prolog, Javascript, Pascal, COBOL, HTML, CSS, JS
Code, Compile, Run and Debug online from anywhere in world.
*******************************************************************************/
#include <bits/stdc++.h>
using namespace std;
vector<int>g[22001];
int u[22001];
int a[22001];
int c[22001];
int ans[22001];
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n,m;
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=m;i++){
int q,w;
cin>>q>>w;
g[q].push_back(w);
g[w].push_back(q);
}
//cout<<"\n\n\n";
for(int iii=1;iii<=n;iii++){
int p=a[iii];
for(int i=1;i<=n;i++){
u[i]=0;
c[i]=i;
}
for(auto it : g[iii]){
u[it]=1;
}
u[iii]=1;
int k=1;
vector<int>s;
s.push_back(iii);
//cout<<iii<<" "<<p<<"\n";
while(k<n){
int j=0;
int l=0;
for(auto i : s){
for(auto it : g[i]){
//cout<<it<<" "<<a[it]<<" "<<p<<" "<<c[it]<<"\n";
if(c[it]!=iii && a[it]<=p){
p+=a[it];
s.push_back(it);
j++;
c[it]=iii;
u[it]++;
u[i]++;
}
}
}
if(j==0){
break;
}
k+=j;
}
//cout<<k<<"\n\n";
if(k==n){
ans[iii]=1;
}
}
for(int i=1;i<=n;i++){
cout<<ans[i];
}
}
Compilation message (stderr)
island.cpp: In function 'int main()':
island.cpp:51:17: warning: unused variable 'l' [-Wunused-variable]
51 | int l=0;
| ^
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |