Submission #891529

#TimeUsernameProblemLanguageResultExecution timeMemory
891529Mr_PhKutije (COCI21_kutije)C++17
70 / 70
144 ms1876 KiB
#include<bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> typedef long long ll; using namespace std; using namespace __gnu_pbds; template<class x> using ordered_set = tree<x, null_type,less<x>, rb_tree_tag,tree_order_statistics_node_update>; const int mod=(int)1e9+7; ///the defines :) #define endl '\n' #define vi vector<int> #define vll vector<ll> #define ent(arr) for(int i=0;i<arr.size();i++)cin>>arr[i]; #define all(arr) arr.begin(),arr.end() #define allr(arr) arr.rbegin(),arr.rend() #define sz size() //#define int long long int parent[1001]; int siz[1001]; int get(int node) { if(parent[node]==node)return node; return get(parent[node]); } void connect(int a,int b) { a=get(a); b=get(b); if(a==b)return; if(siz[a]>siz[b])swap(a,b); parent[a]=b; siz[b]+=siz[a]; } void preprocess() {} void solve() { int n,m,q; cin>>n>>m>>q; for(int i=1;i<=n;i++)parent[i]=i,siz[i]=1; for(int i=0;i<m;i++) { for(int j=1;j<=n;j++) { int x; cin>>x; connect(j,x); } } while(q--) { int a,b; cin>>a>>b; if(get(a)==get(b))cout<<"DA"<<endl; else cout<<"NE"<<endl; } } signed main() { // freopen("div7.in","r",stdin); //freopen("div7.out","w",stdout); ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); preprocess(); //bla(); int t=1; // cin>>t; while(t--) solve(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...