Submission #996535
Source Code Expand
#include <iostream> #include <vector> #include <map> #include <cstdio> #include <cstring> #include <math.h> #include <bitset> #include <time.h> #include <set> #include <algorithm> #define MAXN 4444 #define ll long long using namespace std; int parent[MAXN+2]; int rankk[MAXN+2]; int Find(int x) { if (parent[x] != x) { parent[x]=Find(parent[x]); } return parent[x]; } bool Union(int x,int y) { int xRoot=Find(x); int yRoot=Find(y); if (xRoot==yRoot) return false; if (rankk[xRoot]<rankk[yRoot]) { parent[xRoot]=yRoot; } else if (rankk[xRoot]>rankk[yRoot]) { parent[yRoot]=xRoot; } else { parent[yRoot]=xRoot; rankk[xRoot]++; } return true; } int main() { int N,M; cin>>N>>M; vector<pair<int,pair<int,int> > > edges; for(int i=1;i<=M;i++) { int u,v,w; cin>>u>>v>>w; edges.push_back(make_pair(w,make_pair(u,v))); } sort(edges.begin(),edges.end()); int Q; cin>>Q; for(int q=1;q<=Q;q++) { for(int i=1;i<=N;i++) { parent[i]=i; rankk[i]=0; } int s,t; cin>>s>>t; Union(s,t); ll answer = 0; for(int i=0;i<edges.size();i++) { int u=edges[i].second.first; int v=edges[i].second.second; if (Union(u,v)) { answer+=edges[i].first; } } cout << answer << endl; } }
Submission Info
Submission Time | |
---|---|
Task | A - Graph |
User | balakrishnan_v |
Language | C++14 (GCC 5.4.1) |
Score | 200 |
Code Size | 1633 Byte |
Status | TLE |
Exec Time | 3154 ms |
Memory | 6512 KB |
Judge Result
Set Name | Sample | subtask1 | subtask2 | All | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 200 / 200 | 0 / 300 | 0 / 200 | ||||||||||||
Status |
|
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample_1.txt, sample_2.txt |
subtask1 | sample_2.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_2.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt |
subtask2 | sample_1.txt, sample_2.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_2.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt, subtask_2_1.txt, subtask_2_2.txt, subtask_2_3.txt, subtask_2_4.txt, subtask_2_5.txt, subtask_2_6.txt, subtask_2_7.txt, subtask_2_8.txt |
All | sample_1.txt, sample_2.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_2.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt, subtask_2_1.txt, subtask_2_2.txt, subtask_2_3.txt, subtask_2_4.txt, subtask_2_5.txt, subtask_2_6.txt, subtask_2_7.txt, subtask_2_8.txt, subtask_3_1.txt, subtask_3_2.txt, subtask_3_3.txt, subtask_3_4.txt, subtask_3_5.txt, subtask_3_6.txt, subtask_3_7.txt, subtask_3_8.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_1.txt | AC | 2 ms | 256 KB |
sample_2.txt | AC | 2 ms | 256 KB |
subtask_1_1.txt | AC | 3 ms | 256 KB |
subtask_1_10.txt | AC | 195 ms | 3444 KB |
subtask_1_11.txt | AC | 2 ms | 256 KB |
subtask_1_2.txt | AC | 41 ms | 1148 KB |
subtask_1_3.txt | AC | 389 ms | 6512 KB |
subtask_1_4.txt | AC | 6 ms | 384 KB |
subtask_1_5.txt | AC | 7 ms | 384 KB |
subtask_1_6.txt | AC | 99 ms | 1912 KB |
subtask_1_7.txt | AC | 390 ms | 6512 KB |
subtask_1_8.txt | AC | 6 ms | 384 KB |
subtask_1_9.txt | AC | 12 ms | 576 KB |
subtask_2_1.txt | TLE | 3154 ms | 6512 KB |
subtask_2_2.txt | TLE | 3154 ms | 6512 KB |
subtask_2_3.txt | TLE | 3154 ms | 6512 KB |
subtask_2_4.txt | TLE | 3154 ms | 6512 KB |
subtask_2_5.txt | AC | 196 ms | 384 KB |
subtask_2_6.txt | AC | 726 ms | 704 KB |
subtask_2_7.txt | AC | 2839 ms | 1912 KB |
subtask_2_8.txt | TLE | 3154 ms | 6512 KB |
subtask_3_1.txt | TLE | 3154 ms | 6512 KB |
subtask_3_2.txt | TLE | 3154 ms | 6512 KB |
subtask_3_3.txt | TLE | 3154 ms | 1024 KB |
subtask_3_4.txt | TLE | 3154 ms | 832 KB |
subtask_3_5.txt | TLE | 3154 ms | 3444 KB |
subtask_3_6.txt | TLE | 3154 ms | 6512 KB |
subtask_3_7.txt | TLE | 3154 ms | 6512 KB |
subtask_3_8.txt | TLE | 3154 ms | 6512 KB |