Submission #873432

#TimeUsernameProblemLanguageResultExecution timeMemory
873432vjudge1Colors (RMI18_colors)C++17
0 / 100
53 ms16724 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; #define f first #define s second ll a[200100],b[200100]; ll A[200100],B[200100]; bool used[200100]; vector<ll> g[200100]; vector<ll> c; void dfs(ll v){ c.push_back(v); used[v]=true; for(auto to: g[v]){ if(used[to]) continue; dfs(to); } } void solve(){ ll n,m; cin>>n>>m; for(ll i=1; i<=n; i++) cin>>A[i]; for(ll i=1; i<=n; i++) cin>>B[i]; for(ll i=1; i<=m; i++){ ll u,v; cin>>u>>v; g[u].push_back(v); g[v].push_back(u); } for(ll i=1; i<=n; i++){ if(g[i].size() == 1){ dfs(i); break; } } for(ll i=1; i<=c.size(); i++){ a[i]=A[c[i-1]]; b[i]=B[c[i-1]]; } for(ll i=1; i<=n; i++){ ll pos=-1; for(ll j=i; j<=n; j++){ if(a[j] == b[i]){ pos=j; break; } } // cout<<i<<" "<<pos<<"\n"; if(pos == -1){ cout<<"0"; return; } else if(b[i] == a[i-1]){ a[i]=b[i]; } else{ for(ll j=i; j<=pos; j++) a[j]=b[i]; } } cout<<"1"; } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t=1; cin>>t; for(int i=1; i<=t; i++){ solve(); cout<<'\n'; } }

Compilation message (stderr)

colors.cpp: In function 'void solve()':
colors.cpp:34:18: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   34 |     for(ll i=1; i<=c.size(); i++){
      |                 ~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...