Submission #1574852


Source Code Expand

#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<string>
#include<algorithm>
#include<cmath>
#include<queue>
#include<vector>
#include<stack>
using namespace std;

#define int long long
#define REP(i,n) for(int i=0;(i)<(n);(i)++)
#define ll long long

static const long long INFTY = 1234567891011121314;

int a[100005];
int acc[1000005];//累積和
int sum[100005];//正の数だけ拾った累積和

signed main() {
	int N, K;
	
	cin >> N >> K;

	REP(i, N) {
		cin >> a[i];
	}

	
	REP(i, N) {
		if (i == 0) {
			acc[i] = a[i];
			continue;
		}
		acc[i] = acc[i - 1] + a[i];
	}

	
	REP(i, N) {
		if (i == 0) {
			if (a[i] > 0)sum[i] = a[i];
			else sum[i] = 0;
			continue;
		}
		if (a[i] > 0)sum[i] = sum[i - 1] + a[i];
		else sum[i] = sum[i - 1];
	}

	int ans = 0;
	int temp = 0;
	for (int i = 0;i <= N - K;i++) {
		if (i == 0) {
			ans = max(ans, (max(acc[i + K - 1], 0LL) + sum[N - 1] - sum[i + K - 1]));
		}
		else {
			ans = max(ans, (sum[i - 1] + max((acc[i + K - 1] - acc[i - 1]), 0LL) + sum[N - 1] - sum[i + K - 1]));
		}
	}

	/*
	REP(i, N) {
		cout << acc[i] << " ";
	}
	cout << endl;
	REP(i, N) {
		cout << sum[i] << " ";
	}
	cout << endl;
	*/

	cout << ans << endl;

	return 0;
}

Submission Info

Submission Time
Task B - Contiguous Repainting
User takiteke
Language C++14 (GCC 5.4.1)
Score 400
Code Size 1314 Byte
Status AC
Exec Time 48 ms
Memory 2560 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 4
AC × 26
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt
Case Name Status Exec Time Memory
0_00.txt AC 1 ms 256 KB
0_01.txt AC 1 ms 256 KB
0_02.txt AC 1 ms 256 KB
0_03.txt AC 1 ms 256 KB
1_00.txt AC 1 ms 256 KB
1_01.txt AC 1 ms 256 KB
1_02.txt AC 1 ms 256 KB
1_03.txt AC 18 ms 2560 KB
1_04.txt AC 44 ms 2560 KB
1_05.txt AC 48 ms 2560 KB
1_06.txt AC 43 ms 2560 KB
1_07.txt AC 42 ms 2560 KB
1_08.txt AC 43 ms 2560 KB
1_09.txt AC 43 ms 2560 KB
1_10.txt AC 42 ms 2560 KB
1_11.txt AC 43 ms 2560 KB
1_12.txt AC 43 ms 2560 KB
1_13.txt AC 43 ms 2560 KB
1_14.txt AC 41 ms 2560 KB
1_15.txt AC 44 ms 2560 KB
1_16.txt AC 43 ms 2560 KB
1_17.txt AC 41 ms 2560 KB
1_18.txt AC 43 ms 2560 KB
1_19.txt AC 41 ms 2560 KB
1_20.txt AC 43 ms 2560 KB
1_21.txt AC 43 ms 2560 KB