Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
36207 | j136 | 【S】T2 | C++ | 运行出错 | 0 | 0 MS | 252 KB | 918 | 2025-02-10 13:16:01 |
#include<bits/stdc++.h> using namespace std; int t,n,m,ans; struct operation{ int idx1,to1,idx2,to2; }a[114514]; int mp[114514]; bool cmp(operation a,operation b){ if(a.idx1==b.idx1)return a.to1<b.to1; else if(a.idx1==b.idx2)return a.to1<b.to2; else if(a.idx2==b.idx1)return a.to2<b.to1; else if(a.idx2==b.idx2)return a.to2<b.to2; else if(a.to1!=b.to1) return a.to1<b.to1; else return a.to2<b.to2; } int main(){ freopen("max.in","r",stdin),freopen("max.out","w",stdout); scanf("%d",&t); while(t--){ memset(a,0,sizeof a),memset(mp,0,sizeof mp),scanf("%d%d",&n,&m),ans=0; for(int i=1;i<=m;i++)scanf("%d%d%d%d",&a[i].idx1,&a[i].to1,&a[i].idx2,&a[i].to2); sort(a+1,a+m+1,cmp); for(int i=1;i<=m;i++)mp[a[i].idx1]=a[i].to1,mp[a[i].idx2]=a[i].to2; for(int i=1;i<=n;i++)ans+=mp[i]; cout<<ans<<'\n'; } }