제출 #1174105

#제출 시각아이디문제언어결과실행 시간메모리
1174105javkhlantogsRonald (COCI17_ronald)C++20
120 / 120
69 ms12100 KiB
#include<bits/stdc++.h> #define ll long long using namespace std; int main(){ ll n,m,i,j,ans=0,c,k=0; cin>>n>>m; vector<vector<ll>> e(n+1,vector<ll>(n+1,0)); vector<ll> p(n+1,0),q(n+1,0),a(m),b(m); for(i=0 ; i<m ; i++){ cin>>a[i]>>b[i]; e[a[i]][b[i]]=1; e[b[i]][a[i]]=1; } bool check=true; for(i=1 ; i<=n ; i++){ for(j=1 ; j<=n ; j++){ if(i==j) continue; if(e[i][j]==1){ p[j]=p[i]; } else p[j]=1-p[i]; } } for(i=1 ; i<=n ; i++){ for(j=1 ; j<=n ; j++){ if(i==j) continue; if(e[i][j]==1 and p[i]+p[j]==1) check=false; if(e[i][j]==0 and p[i]+p[j]!=1) check=false; } } if(check) cout<<"DA"; else{ check=true; q[1]=1; for(i=1 ; i<=n ; i++){ for(j=1 ; j<=n ; j++){ if(i==j) continue; if(e[i][j]==1){ q[j]=q[i]; } else{ q[j]=1-q[i]; } } } for(i=1 ; i<=n ; i++){ for(j=1 ; j<=n ; j++){ if(i==j) continue; if(e[i][j]==1 and q[i]+q[j]==1) check=false; if(e[i][j]==0 and q[i]+q[j]!=1) check=false; } } if(check) cout<<"DA"; else cout<<"NE"; } return 0; }
#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...