Submission #5913467


Source Code Expand

#include <bits/stdc++.h>
#define int long long
#define mod (int)(1e9+7)
#define inf (int)(3e18+7)
#define rep(i,n) for(int i=0;i<n;i++)
#define REP(i,n) for(int i=1;i<n;i++)
#define P pair<int,int>
#define PiP pair<int,pair<int,int>>
#define all(v) v.begin(),v.end()
#define mkp make_pair
#define mkt make_tuple
#define prique(T) priority_queue<T,vector<T>,greater<T>>
#define vecunique(vec) sort(vec.begin(), vec.end());decltype(vec)::iterator result = std::unique(vec.begin(), vec.end());vec.erase(result, vec.end())
using namespace std;

bool prime(int x) {
	for (int i = 2; i * i <= x; i++) {
		if (x % i == 0)return false;
	}
	return x > 1;
}
int gcd(int x, int y) {
	if (y == 0)return x;
	return gcd(y, x % y);
}
int lcm(int x, int y) {
	return x / gcd(x, y) * y;
}
int kai(int x, int y) {
	int res = 1;
	for (int i = x - y + 1; i <= x; i++) {
		res *= i; res %= mod;
	}
	return res;
}
int mod_pow(int x, int y) {
	int res = 1;
	while (y > 0) {
		if (y & 1) {
			res = res * x % mod;
		}
		x = x * x % mod;
		y >>= 1;
	}
	return res;
}
int comb(int x, int y) {
	if (y > x)return 0;
	return kai(x, y) * mod_pow(kai(y, y), mod - 2) % mod;
}
/*--------Library Zone!--------*/

int n, m, par[1005], mi[1005];
signed main() {
	cin >> n >> m;
	REP(i, n) {
		cin >> par[i]; mi[i] = inf;
	}
	rep(i, m) {
		int a, b; cin >> a >> b;
		mi[a] = b;
	}
	for (int i = n - 1; i > 0; i--) {
		if (par[i] == 0)continue;
		mi[par[i]] = min(mi[par[i]], mi[i]);
	}
	int ans = 0;
	REP(i, n) {
		ans += mi[i] - mi[par[i]];
	}
	cout << ans << endl;
}

Submission Info

Submission Time
Task B - PackDrop
User define
Language C++14 (GCC 5.4.1)
Score 300
Code Size 1603 Byte
Status AC
Exec Time 2 ms
Memory 256 KB

Judge Result

Set Name All
Score / Max Score 300 / 300
Status
AC × 27
Set Name Test Cases
All 00_sample_1, 00_sample_2, 00_sample_3, 10_random_00_n_5, 10_random_01_n_10, 10_random_02_n_2, 10_random_03_n_7, 10_random_04_n_6, 20_random_00_n_64, 20_random_01_n_95, 20_random_02_n_20, 20_random_03_n_33, 20_random_04_n_91, 30_random_00_n_793, 30_random_01_n_611, 30_random_02_n_852, 40_random_00_n_1000, 40_random_01_n_1000, 50_edge_one_00_n_11, 50_edge_one_01_n_101, 50_edge_one_02_n_999, 98_almost_straight_00_n_1000, 98_almost_straight_01_n_1000, 98_almost_straight_02_n_1000, 99_straight_00_n_10, 99_straight_01_n_100, 99_straight_02_n_1000
Case Name Status Exec Time Memory
00_sample_1 AC 1 ms 256 KB
00_sample_2 AC 1 ms 256 KB
00_sample_3 AC 1 ms 256 KB
10_random_00_n_5 AC 1 ms 256 KB
10_random_01_n_10 AC 1 ms 256 KB
10_random_02_n_2 AC 1 ms 256 KB
10_random_03_n_7 AC 1 ms 256 KB
10_random_04_n_6 AC 1 ms 256 KB
20_random_00_n_64 AC 1 ms 256 KB
20_random_01_n_95 AC 1 ms 256 KB
20_random_02_n_20 AC 1 ms 256 KB
20_random_03_n_33 AC 1 ms 256 KB
20_random_04_n_91 AC 1 ms 256 KB
30_random_00_n_793 AC 2 ms 256 KB
30_random_01_n_611 AC 1 ms 256 KB
30_random_02_n_852 AC 2 ms 256 KB
40_random_00_n_1000 AC 2 ms 256 KB
40_random_01_n_1000 AC 2 ms 256 KB
50_edge_one_00_n_11 AC 1 ms 256 KB
50_edge_one_01_n_101 AC 1 ms 256 KB
50_edge_one_02_n_999 AC 2 ms 256 KB
98_almost_straight_00_n_1000 AC 1 ms 256 KB
98_almost_straight_01_n_1000 AC 1 ms 256 KB
98_almost_straight_02_n_1000 AC 1 ms 256 KB
99_straight_00_n_10 AC 1 ms 256 KB
99_straight_01_n_100 AC 1 ms 256 KB
99_straight_02_n_1000 AC 1 ms 256 KB