답안 #406753

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
406753 2021-05-18T04:15:42 Z Maqsut_03 자매 도시 (APIO20_swap) C++14
13 / 100
161 ms 18916 KB
#include "swap.h"
#include <bits/stdc++.h>

#define ll int
#define pl pair<ll, ll>
#define llv vector<ll>
#define pv vector<pl>
#define pb push_back
#define ppb(x, y) push_back({x, y})
#define ff first
#define ss second
#define sz size()
using namespace std;
const int NN = 2 * 1e5 + 3, MOD = 1e9 + 7;

pl u0[NN];
pv v[NN];
ll n, m, k, d, u[NN];
bool f, f1, f2, f3;

void init(int N, int M, vector<int> U, vector<int> V, vector<int> W) 
{
	n = N;
	m = M;
	for (int i=0; i<m; i++)
	{
		v[V[i]].ppb(U[i], W[i]);
		v[U[i]].ppb(V[i], W[i]);
		k = max(k, W[i]);
		
		u0[i] = {W[i], V[i]};
	}
	sort(u0, u0 + m);
	for (int i=0; i<m; i++) u[u0[i].ss] = u0[i].ff;
	d = u0[2].ff;
	int p = 0, q = 0;
	for (int i=0; i<n; i++)
	{
		if (v[i].sz == 1) q++;
		if (v[i].sz == 2) p++;
	}
	if (q == 2 && q + p == n) f = 1;
	
	if (m == n - 1 && v[0].sz == m) f1 = 1;
	f2 = 1;
	for (int i=0; i<n; i++)
	{
		if(v[i].sz != 2)
		{
			f2 = 0;
			break;
		}
	}
	return ;
}

int getMinimumFuelCapacity(int X, int Y) 
{
	if (f) return -1;
	if (f2) return k;
	if (f1) return max({d, u[X], u[Y]});
}

Compilation message

swap.cpp: In function 'void init(int, int, std::vector<int>, std::vector<int>, std::vector<int>)':
swap.cpp:44:28: warning: comparison of integer expressions of different signedness: 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   44 |  if (m == n - 1 && v[0].sz == m) f1 = 1;
      |                    ~~~~~~~~^~~~
swap.cpp: In function 'int getMinimumFuelCapacity(int, int)':
swap.cpp:62:1: warning: control reaches end of non-void function [-Wreturn-type]
   62 | }
      | ^
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 4940 KB Output is correct
2 Correct 3 ms 4940 KB Output is correct
3 Correct 3 ms 4940 KB Output is correct
4 Correct 3 ms 4940 KB Output is correct
5 Correct 5 ms 4940 KB Output is correct
6 Correct 4 ms 4964 KB Output is correct
7 Correct 4 ms 5068 KB Output is correct
8 Correct 4 ms 5068 KB Output is correct
9 Correct 53 ms 10180 KB Output is correct
10 Correct 65 ms 11380 KB Output is correct
11 Correct 65 ms 11236 KB Output is correct
12 Correct 67 ms 11644 KB Output is correct
13 Correct 66 ms 11544 KB Output is correct
14 Correct 59 ms 10308 KB Output is correct
15 Correct 128 ms 13132 KB Output is correct
16 Correct 124 ms 13056 KB Output is correct
17 Correct 130 ms 13356 KB Output is correct
18 Correct 133 ms 13320 KB Output is correct
19 Correct 74 ms 9440 KB Output is correct
20 Correct 133 ms 14268 KB Output is correct
21 Correct 161 ms 14464 KB Output is correct
22 Correct 132 ms 14764 KB Output is correct
23 Correct 137 ms 14764 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 4940 KB Output is correct
2 Correct 3 ms 4940 KB Output is correct
3 Correct 120 ms 14976 KB Output is correct
4 Correct 133 ms 18760 KB Output is correct
5 Correct 126 ms 18896 KB Output is correct
6 Correct 121 ms 18592 KB Output is correct
7 Correct 123 ms 18916 KB Output is correct
8 Correct 125 ms 17792 KB Output is correct
9 Correct 129 ms 17976 KB Output is correct
10 Correct 127 ms 17780 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 4940 KB Output is correct
2 Correct 3 ms 4940 KB Output is correct
3 Correct 3 ms 4940 KB Output is correct
4 Correct 3 ms 4940 KB Output is correct
5 Correct 5 ms 4940 KB Output is correct
6 Correct 4 ms 4964 KB Output is correct
7 Correct 4 ms 5068 KB Output is correct
8 Correct 4 ms 5068 KB Output is correct
9 Incorrect 4 ms 4940 KB Output isn't correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 4 ms 4940 KB Output isn't correct
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 4940 KB Output is correct
2 Correct 3 ms 4940 KB Output is correct
3 Correct 3 ms 4940 KB Output is correct
4 Correct 3 ms 4940 KB Output is correct
5 Correct 5 ms 4940 KB Output is correct
6 Correct 4 ms 4964 KB Output is correct
7 Correct 4 ms 5068 KB Output is correct
8 Correct 4 ms 5068 KB Output is correct
9 Correct 53 ms 10180 KB Output is correct
10 Correct 65 ms 11380 KB Output is correct
11 Correct 65 ms 11236 KB Output is correct
12 Correct 67 ms 11644 KB Output is correct
13 Correct 66 ms 11544 KB Output is correct
14 Correct 59 ms 10308 KB Output is correct
15 Correct 128 ms 13132 KB Output is correct
16 Correct 124 ms 13056 KB Output is correct
17 Correct 130 ms 13356 KB Output is correct
18 Correct 133 ms 13320 KB Output is correct
19 Correct 120 ms 14976 KB Output is correct
20 Correct 133 ms 18760 KB Output is correct
21 Correct 126 ms 18896 KB Output is correct
22 Correct 121 ms 18592 KB Output is correct
23 Correct 123 ms 18916 KB Output is correct
24 Correct 125 ms 17792 KB Output is correct
25 Correct 129 ms 17976 KB Output is correct
26 Correct 127 ms 17780 KB Output is correct
27 Incorrect 4 ms 5068 KB Output isn't correct
28 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 4 ms 4940 KB Output isn't correct