QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#355581#7871. 命运C1942huangjiaxu5 22ms5248kbC++141.2kb2024-03-16 21:18:092024-03-16 21:18:10

Judging History

你现在查看的是最新测评结果

  • [2024-03-16 21:18:10]
  • 评测
  • 测评结果:5
  • 用时:22ms
  • 内存:5248kb
  • [2024-03-16 21:18:09]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
const int N=5e5+5,inf=1e9+7;
typedef long long ll;
int n,m,k,s,mn[N],fa[N],ce;
ll ans;
vector<pair<int,int> >e1,e2;
struct edge{
	int x,y,z;
	bool operator <(const edge a)const{return z<a.z;}
}e[N];
int gf(int x){
	return fa[x]==x?fa[x]:fa[x]=gf(fa[x]);
}
int main(){
	scanf("%d%d%d%d",&n,&m,&k,&s);
	for(int i=1;i<=n;++i)fa[i]=i,mn[i]=inf;
	for(int i=1,x,y,z;i<=m;++i){
		scanf("%d%d%d",&x,&y,&z);
		if(x==s)mn[y]=min(mn[y],z);
		else if(y==s)mn[x]=min(mn[x],z);
		else e[++ce]={x,y,z};
	}
	sort(e+1,e+ce+1);
	for(int i=1;i<=ce;++i){
		int x=gf(e[i].x),y=gf(e[i].y);
		if(x==y)continue;
		if(e[i].z>=max(mn[x],mn[y]))e1.emplace_back(e[i].z,max(mn[x],mn[y]));
		else e2.emplace_back(max(mn[x],mn[y]),e[i].z);
		fa[x]=y,mn[y]=min(mn[y],mn[x]);
		ans+=e[i].z;
	}
	for(int i=1;i<=n;++i)if(i!=s&&fa[i]==i){
		if(mn[i]==inf)return puts("nonnondayo"),0;
		ans+=mn[i],--k;
	}
	if(k<0)return puts("nonnondayo"),0;
	sort(e1.begin(),e1.end(),greater<pair<int,int> >());
	sort(e2.begin(),e2.end());
	for(auto v:e1)if(k)ans+=v.second-v.first,--k;
	for(auto v:e2)if(k)ans+=v.first-v.second,--k;
	if(k)return puts("nonnondayo"),0;
	printf("%lld\n",ans);
	return 0;
}

详细

Subtask #1:

score: 5
Accepted

Test #1:

score: 5
Accepted
time: 7ms
memory: 4860kb

input:

49277 49276 1 49277
1 2 2000
2 3 3000
2 4 4000
3 5 5000
3 6 6000
4 7 7000
1 8 8000
7 9 9000
1 10 10000
5 11 11000
4 12 12000
3 13 13000
13 14 14000
1 15 15000
7 16 16000
11 17 17000
2 18 18000
10 19 19000
6 20 20000
4 21 21000
17 22 22000
1 23 23000
14 24 24000
4 25 25000
16 26 26000
15 27 27000
9 2...

output:

1214136002000

result:

ok single line: '1214136002000'

Test #2:

score: 0
Accepted
time: 9ms
memory: 4724kb

input:

49324 49323 1 49324
1 2 2
2 3 3
2 4 4
3 5 5
4 6 6
6 7 7
2 8 8
2 9 9
4 10 10
6 11 11
9 12 12
4 13 13
8 14 14
8 15 15
7 16 16
11 17 17
15 18 18
2 19 19
10 20 20
19 21 21
14 22 22
16 23 23
20 24 24
23 25 25
3 26 26
2 27 27
8 28 28
11 29 29
20 30 30
15 31 31
16 32 32
19 33 33
29 34 34
5 35 35
21 36 36
1...

output:

nonnondayo

result:

ok single line: 'nonnondayo'

Test #3:

score: 0
Accepted
time: 10ms
memory: 4720kb

input:

49423 49422 1 1
1 2 2
2 3 3
1 4 4
3 5 5
2 6 6
1 7 7
1 8 8
7 9 9
3 10 10
3 11 11
5 12 12
3 13 13
9 14 14
10 15 15
13 16 16
5 17 17
9 18 18
12 19 19
17 20 20
4 21 21
5 22 22
12 23 23
21 24 24
21 25 25
11 26 26
17 27 27
21 28 28
18 29 29
17 30 30
2 31 31
21 32 32
28 33 33
17 34 34
31 35 35
11 36 36
8 3...

output:

nonnondayo

result:

ok single line: 'nonnondayo'

Test #4:

score: 0
Accepted
time: 5ms
memory: 4712kb

input:

49501 49500 49501 49501
1 2 2
1 3 3
3 4 4
2 5 5
5 6 6
1 7 7
6 8 8
5 9 9
6 10 10
5 11 11
2 12 12
12 13 13
13 14 14
8 15 15
13 16 16
5 17 17
9 18 18
9 19 19
9 20 20
14 21 21
18 22 22
16 23 23
7 24 24
1 25 25
7 26 26
1 27 27
15 28 28
22 29 29
20 30 30
12 31 31
4 32 32
16 33 33
22 34 34
11 35 35
27 36 3...

output:

nonnondayo

result:

ok single line: 'nonnondayo'

Subtask #2:

score: 0
Wrong Answer

Test #5:

score: 0
Wrong Answer
time: 1ms
memory: 3908kb

input:

21 20 2 21
1 2 18581
1 3 9620
2 4 4362
1 5 7702
5 6 17435
4 7 11679
3 8 14832
1 9 15073
2 10 6595
5 11 19676
11 12 16943
12 13 5268
5 14 20262
8 15 8192
7 16 12340
7 17 1437
7 18 3064
2 19 10437
12 20 2882
19 21 13483

output:

1000218433

result:

wrong answer 1st lines differ - expected: 'nonnondayo', found: '1000218433'

Subtask #3:

score: 0
Skipped

Dependency #2:

0%

Subtask #4:

score: 0
Wrong Answer

Dependency #1:

100%
Accepted

Test #14:

score: 20
Accepted
time: 15ms
memory: 4948kb

input:

49997 54855 3516 1
3 2 123052288
4 2 96660489
5 4 21916339
6 4 110026562
7 2 37432698
8 4 38560777
9 5 83209343
10 9 80352789
11 2 88956732
12 7 65449905
13 2 38239108
14 5 90154247
15 4 30810782
16 13 96492679
17 14 112886179
18 9 87190321
19 5 91181643
20 3 107304129
21 15 101439791
22 19 12060197...

output:

2688197428747

result:

ok single line: '2688197428747'

Test #15:

score: 0
Accepted
time: 14ms
memory: 5004kb

input:

49997 51737 2558 1
3 2 123053094
4 2 96661142
5 4 21916374
6 3 110026590
7 3 37432598
8 5 38561207
9 3 83209496
10 6 80352500
11 10 88956702
12 8 65450072
13 7 38238198
14 6 90153662
1 2 30811464
16 15 96493667
17 15 112885786
18 16 87189617
19 16 91182345
20 19 107304693
21 16 101440408
22 19 12060...

output:

2837250649688

result:

ok single line: '2837250649688'

Test #16:

score: -20
Wrong Answer
time: 10ms
memory: 4988kb

input:

49991 50261 391 1
3 2 123052091
4 2 96661422
5 4 21916293
6 3 110026296
7 2 37432814
8 6 38560644
9 5 83209409
10 8 80352817
11 5 88956822
12 2 65449972
13 9 38239183
14 12 90154124
15 6 30811280
16 10 96493604
17 15 112886136
18 2 87190273
19 15 91182250
20 8 107304418
21 5 101440651
22 8 120601454...

output:

2914620841966

result:

wrong answer 1st lines differ - expected: 'nonnondayo', found: '2914620841966'

Subtask #5:

score: 0
Wrong Answer

Test #21:

score: 10
Accepted
time: 22ms
memory: 5216kb

input:

9992 99999 500 1
1 2 96661121
1 3 21915940
1 4 110026320
1 5 37433129
1 6 38560320
1 7 83209024
1 8 80352054
1 9 88957672
1 10 65449874
1 11 38239186
1 12 90153728
1 13 30810974
1 14 96493404
1 15 112886259
1 16 87190053
1 17 91182163
1 18 107303768
1 19 101439823
1 20 120601875
1 21 122197599
1 22 ...

output:

112890891818

result:

ok single line: '112890891818'

Test #22:

score: 0
Accepted
time: 22ms
memory: 5248kb

input:

9992 99999 1 1
1 2 96660674
2 3 21916518
2 4 110026286
2 5 37432719
4 6 38560294
5 7 83209368
7 8 80352797
2 9 88957012
6 10 65449023
8 11 38237968
3 12 90153572
12 13 30810767
12 14 96493398
9 15 112886094
8 16 87190517
2 17 91182246
5 18 107304167
15 19 101440398
16 20 120601474
13 21 122197537
21...

output:

74448057849

result:

ok single line: '74448057849'

Test #23:

score: 0
Accepted
time: 18ms
memory: 5200kb

input:

9996 99999 2000 1
1 2 96660545
1 3 21916931
1 4 110026628
1 5 37432991
1 6 38561067
1 7 83208951
1 8 80351952
1 9 88957054
1 10 65449457
1 11 38238861
1 12 90154656
1 13 30811324
1 14 96493311
1 15 112885579
1 16 87189959
1 17 91182035
1 18 107304613
1 19 101440492
1 20 120602368
1 21 122197999
1 22...

output:

222817867069

result:

ok single line: '222817867069'

Test #24:

score: 0
Accepted
time: 17ms
memory: 5104kb

input:

9998 99999 6000 1
1 2 96661358
1 3 21916728
1 4 110026601
1 5 37432478
1 6 38560240
1 7 83209841
1 8 80352730
1 9 88957089
1 10 65450089
1 11 38238321
1 12 90153969
1 13 30810766
1 14 96493287
1 15 112885621
1 16 87190068
1 17 91181672
1 18 107303705
1 19 101440812
1 20 120601672
1 21 122197495
1 22...

output:

514650883971

result:

ok single line: '514650883971'

Test #25:

score: -10
Wrong Answer
time: 18ms
memory: 5180kb

input:

9995 99999 8000 1
1 2 96661390
1 3 21916323
1 4 110026027
1 5 37433293
1 6 38560397
1 7 83209785
1 8 80352815
1 9 88957405
1 10 65449996
1 11 38238934
1 12 90153822
1 13 30811526
1 14 96493201
1 15 112885855
1 16 87190720
1 17 91181544
1 18 107304307
1 19 101440244
1 20 120601746
1 21 122196886
1 22...

output:

656030013038

result:

wrong answer 1st lines differ - expected: 'nonnondayo', found: '656030013038'

Subtask #6:

score: 0
Skipped

Dependency #3:

0%

Subtask #7:

score: 0
Skipped

Dependency #1:

100%
Accepted

Dependency #2:

0%