Submission #1013167

#TimeUsernameProblemLanguageResultExecution timeMemory
1013167vjudge1timeismoney (balkan11_timeismoney)C++11
0 / 100
3 ms860 KiB
#include <bits/stdc++.h>
#define ll long long
#define pii pair<int,int>
#define pll pair<long long,long long>
#define f first
#define s second
using namespace std;
int mod = 1e9+7;
ll inf = 1e18+5;
int n,m,size[205],link[205],reza1,reza2;
vector<pair<pii,pii>> putovi;

int find(int a){
	if(link[a]==a)return a;
	return link[a] = find(link[a]);
}

bool same(int a,int b){
	return (find(a)==find(b));
}


int main(){
	ios::sync_with_stdio(0);
	cin.tie(0); cout.tie(0);
	for(int i = 0; i<205; i++){size[i]=1; link[i]=i;}	
	cin>>n>>m;
	for(int i = 0; i<m; i++){
		int a,b,c,d;
		cin>>a>>b>>c>>d;
		putovi.push_back({{c,d},{a,b}});
	}
	sort(putovi.begin(),putovi.end());
	for(auto z : putovi){
		int a = z.s.f;
		int b = z.s.s;
		if(same(a,b))continue;
		a = find(a);
		b = find(a);
		if(size[a]>size[b])swap(a,b);
		//size od a je manji od size od b
		size[b]+=size[a];
		link[a]=b;
		reza1+=z.f.f;
		reza2+=z.f.s;
	}

	cout<<reza1<<" "<<reza2<<endl;
return 0;
}

#Verdict Execution timeMemoryGrader output
Fetching results...