Submission #33816593


Source Code Expand

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int INF = 0x3f3f3f3f3f3f3f3f;

template <typename T>
inline void read(T &a) {
	char c;for (c = getchar(); (c < '0' || c > '9') && c != '-'; c = getchar());bool f = c == '-';T x = f ? 0 : (c ^ '0');for (c = getchar(); c >= '0' && c <= '9'; c = getchar()) {x = x * 10 + (c ^ '0');}a = f ? -x : x;
}
template <typename T, typename ...Argv>
inline void read(T &a, Argv &...argv) {
	read(a), read(argv...);
}

int n, l, r;
int a[200000 + 10], /*sufa[200000 + 10], */prefa[200000 + 10];
int choser[200000 + 10];
inline int seca(int l, int r) {
	return prefa[r] - prefa[l - 1];
}
signed main() {
	read(n, l, r);
	for (int i = 1; i <= n; ++i) {
		read(a[i]);
	}
	for (int i = 1; i <= n; ++i) {
		prefa[i] = prefa[i - 1] + a[i];
	}
	// for (int i = n; i; --i) {
	// 	sufa[i] = sufa[i + 1] + a[i];
	// }
	for (int i = 1; i <= n; ++i) {
		choser[i] = - seca(i, n) + (n - i + 1) * r;
	}
	// choser[n + 1] = INF;
	for (int i = n; i; --i) {
		choser[i] = min(choser[i], choser[i + 1]);
	}
	int ans = INF;
	for (int i = 0; i <= n; ++i) {
		// ans = min(ans, prefa[n] - seca(1, i) + i * l);
		// ans = min(ans, prefa[n] - seca(i, n) + (n - i + 1) * r);
		ans = min(ans, prefa[n] - seca(1, i) + i * l + choser[i + 1]);
	}
	printf("%lld\n", ans);
}

Submission Info

Submission Time
Task D - Left Right Operation
User rsdbk_husky
Language C++ (GCC 9.2.1)
Score 400
Code Size 1350 Byte
Status AC
Exec Time 24 ms
Memory 8408 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 3
AC × 38
Set Name Test Cases
Sample 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt
All 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 02_max_01.txt, 02_max_02.txt, 02_max_03.txt, 02_max_04.txt, 02_max_05.txt, 02_max_06.txt, 02_max_07.txt, 02_max_08.txt, 02_max_09.txt, 02_max_10.txt, 03_handmade_01.txt, 03_handmade_02.txt, 03_handmade_03.txt, 03_handmade_04.txt, 03_handmade_05.txt, 03_handmade_06.txt, 03_handmade_07.txt, 03_handmade_08.txt, 03_handmade_09.txt, 03_handmade_10.txt, 04_hack_01.txt, 04_hack_02.txt, 04_hack_03.txt, 04_hack_04.txt, 04_hack_05.txt
Case Name Status Exec Time Memory
00_sample_01.txt AC 7 ms 3460 KiB
00_sample_02.txt AC 2 ms 3520 KiB
00_sample_03.txt AC 2 ms 3736 KiB
01_random_01.txt AC 2 ms 3696 KiB
01_random_02.txt AC 11 ms 5376 KiB
01_random_03.txt AC 18 ms 8068 KiB
01_random_04.txt AC 11 ms 5516 KiB
01_random_05.txt AC 2 ms 3744 KiB
01_random_06.txt AC 6 ms 4016 KiB
01_random_07.txt AC 13 ms 5836 KiB
01_random_08.txt AC 9 ms 4616 KiB
01_random_09.txt AC 11 ms 5248 KiB
01_random_10.txt AC 18 ms 8180 KiB
02_max_01.txt AC 19 ms 8208 KiB
02_max_02.txt AC 22 ms 8336 KiB
02_max_03.txt AC 22 ms 8408 KiB
02_max_04.txt AC 24 ms 8320 KiB
02_max_05.txt AC 24 ms 8132 KiB
02_max_06.txt AC 18 ms 8404 KiB
02_max_07.txt AC 18 ms 8320 KiB
02_max_08.txt AC 19 ms 8404 KiB
02_max_09.txt AC 21 ms 8172 KiB
02_max_10.txt AC 18 ms 8240 KiB
03_handmade_01.txt AC 16 ms 8340 KiB
03_handmade_02.txt AC 15 ms 8396 KiB
03_handmade_03.txt AC 15 ms 8208 KiB
03_handmade_04.txt AC 16 ms 8336 KiB
03_handmade_05.txt AC 15 ms 8168 KiB
03_handmade_06.txt AC 16 ms 8316 KiB
03_handmade_07.txt AC 20 ms 8176 KiB
03_handmade_08.txt AC 15 ms 8236 KiB
03_handmade_09.txt AC 16 ms 8400 KiB
03_handmade_10.txt AC 15 ms 8172 KiB
04_hack_01.txt AC 12 ms 8408 KiB
04_hack_02.txt AC 17 ms 8208 KiB
04_hack_03.txt AC 15 ms 8340 KiB
04_hack_04.txt AC 15 ms 8340 KiB
04_hack_05.txt AC 18 ms 8396 KiB