Submission #101900


Source Code Expand

#include <iostream>
#include <vector>

using namespace std;

#define dump(n) cout<<"# "<<#n<<'='<<(n)<<endl

typedef long long ll;

int main()
{
	for(int n,m;cin>>n>>m && n|m;){
		vector<ll> a(n),b(m);
		for(int i=0;i<n;i++) cin>>a[i];
		for(int i=0;i<m;i++) cin>>b[i],b[i]--;
		
		vector<ll> psum(n+1);
		for(int i=0;i<n;i++) psum[i+1]=psum[i]+a[i];
		
		int cur=0;
		ll res=psum[n/2];
		for(int i=0;i<m;i++){
			cur=(cur+b[i])%n;
			if(cur<n/2)
				res=max(res,psum[cur+n/2]-psum[cur]);
			else
				res=max(res,psum[n]-psum[cur]+psum[n/2-(n-cur)]);
		}
		
		cout<<res<<endl;
	}
}

Submission Info

Submission Time
Task J - Very Intellectual Card Game
User Running
Language C++11 (GCC 4.8.1)
Score 100
Code Size 614 Byte
Status AC
Exec Time 141 ms
Memory 3108 KB

Judge Result

Set Name All
Score / Max Score 100 / 100
Status
AC × 18
Set Name Test Cases
All 1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 2, 3, 4, 5, 6, 7, 8, 9
Case Name Status Exec Time Memory
1 AC 21 ms 736 KB
10 AC 22 ms 808 KB
11 AC 20 ms 800 KB
12 AC 20 ms 804 KB
13 AC 95 ms 2344 KB
14 AC 68 ms 1708 KB
15 AC 136 ms 3104 KB
16 AC 135 ms 3108 KB
17 AC 141 ms 3060 KB
18 AC 135 ms 3104 KB
2 AC 21 ms 932 KB
3 AC 21 ms 800 KB
4 AC 20 ms 800 KB
5 AC 20 ms 796 KB
6 AC 21 ms 808 KB
7 AC 20 ms 804 KB
8 AC 20 ms 804 KB
9 AC 21 ms 800 KB