#include <bits/stdc++.h>
using namespace std;
map<int,set<int>> adj;
multiset<int> ms;
map<pair<int,int>,int> edwt;
int SUBTASK1=0;
bool isCyc=0;
bool isSubtask1=true;
bool isCycle(){
for(auto x:adj){
if(x.second.size()<=1)return false;
if(x.second.size()>2)isSubtask1=false;
}
return true;
}
void init(int N, int M,std::vector<int> U, std::vector<int> V, std::vector<int> W) {
for(int i=0;i<M;i++){
int x=U[i];
int y=V[i];
int z=W[i];
ms.insert(z);
edwt[{min(x,y),max(x,y)}]=z;
SUBTASK1=max(SUBTASK1,(W[i]));
adj[x].insert(y);
adj[y].insert(x);
}
isCyc=isCycle();
}
int getMinimumFuelCapacity(int X, int Y) {
if(isSubtask1){
if(isCyc){
return SUBTASK1;
}else
return -1;
}else{
int one = edwt[{0,X}];
int two = edwt[{0,Y}];
int res=one+two;
ms.erase(ms.find(one));
ms.erase(ms.find(two));
if(ms.size()>0)
res+=(*ms.begin());
ms.insert(one);
ms.insert(two);
return res;
}
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
364 KB |
Output is correct |
2 |
Correct |
1 ms |
364 KB |
Output is correct |
3 |
Correct |
1 ms |
364 KB |
Output is correct |
4 |
Correct |
1 ms |
492 KB |
Output is correct |
5 |
Correct |
2 ms |
620 KB |
Output is correct |
6 |
Correct |
2 ms |
620 KB |
Output is correct |
7 |
Correct |
2 ms |
620 KB |
Output is correct |
8 |
Correct |
2 ms |
620 KB |
Output is correct |
9 |
Correct |
312 ms |
26348 KB |
Output is correct |
10 |
Correct |
386 ms |
31980 KB |
Output is correct |
11 |
Correct |
393 ms |
31468 KB |
Output is correct |
12 |
Correct |
433 ms |
33260 KB |
Output is correct |
13 |
Correct |
430 ms |
33388 KB |
Output is correct |
14 |
Correct |
312 ms |
26476 KB |
Output is correct |
15 |
Correct |
467 ms |
34040 KB |
Output is correct |
16 |
Correct |
436 ms |
33176 KB |
Output is correct |
17 |
Correct |
487 ms |
34900 KB |
Output is correct |
18 |
Correct |
470 ms |
34900 KB |
Output is correct |
19 |
Correct |
89 ms |
9708 KB |
Output is correct |
20 |
Correct |
481 ms |
35432 KB |
Output is correct |
21 |
Correct |
472 ms |
34472 KB |
Output is correct |
22 |
Correct |
503 ms |
36560 KB |
Output is correct |
23 |
Correct |
513 ms |
36432 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
364 KB |
Output is correct |
2 |
Correct |
1 ms |
364 KB |
Output is correct |
3 |
Runtime error |
540 ms |
72716 KB |
Execution killed with signal 6 (could be triggered by violating memory limits) |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
1 ms |
492 KB |
Execution killed with signal 6 (could be triggered by violating memory limits) |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
1 ms |
492 KB |
Execution killed with signal 6 (could be triggered by violating memory limits) |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
364 KB |
Output is correct |
2 |
Correct |
1 ms |
364 KB |
Output is correct |
3 |
Correct |
1 ms |
364 KB |
Output is correct |
4 |
Correct |
1 ms |
492 KB |
Output is correct |
5 |
Correct |
2 ms |
620 KB |
Output is correct |
6 |
Correct |
2 ms |
620 KB |
Output is correct |
7 |
Correct |
2 ms |
620 KB |
Output is correct |
8 |
Correct |
2 ms |
620 KB |
Output is correct |
9 |
Correct |
312 ms |
26348 KB |
Output is correct |
10 |
Correct |
386 ms |
31980 KB |
Output is correct |
11 |
Correct |
393 ms |
31468 KB |
Output is correct |
12 |
Correct |
433 ms |
33260 KB |
Output is correct |
13 |
Correct |
430 ms |
33388 KB |
Output is correct |
14 |
Correct |
312 ms |
26476 KB |
Output is correct |
15 |
Correct |
467 ms |
34040 KB |
Output is correct |
16 |
Correct |
436 ms |
33176 KB |
Output is correct |
17 |
Correct |
487 ms |
34900 KB |
Output is correct |
18 |
Correct |
470 ms |
34900 KB |
Output is correct |
19 |
Runtime error |
540 ms |
72716 KB |
Execution killed with signal 6 (could be triggered by violating memory limits) |
20 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
1 ms |
492 KB |
Execution killed with signal 6 (could be triggered by violating memory limits) |