比赛 Asm.Def战记之圣地亚哥“杯2015 评测结果 WWWWWWTTTT
题目名称 Asm.Def的枪榴弹 最终得分 0
用户昵称 momo123 运行时间 4.130 s
代码语言 C++ 内存使用 0.31 MiB
提交时间 2015-10-31 11:56:17
显示代码纯文本
#include<cstring>
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<algorithm>
#include<cmath>
#include<vector>
#include<queue>
using namespace std;
int n,maxx,k0,k1,k2;
int sum[20],a[20],b[20],c[20],d[20],e[20];
bool v[20];
int aa,bb,cc,dd,ee;
void dfs(int t,int setp)
{
    for(int j=1;j<=n;j++)
	{
	    int xx=k0-a[j],yy=k1-b[j];
	    int xxx,yyy;
	    if(xx<0)xxx=-xx;
	    if(yy<0)yyy=-yy;
		if(((xx>=0&&yy>=0)||k2>=xxx+yyy)&&!v[j])
		{
		  k0=k0+c[j]-a[j];k1=k1+d[j]-b[j];k2=k2+e[j]-xxx-yyy;
		  v[j]=1;
		  int sum=k0+k1+k2;
		  maxx=max(maxx,sum);
		  dfs(j,setp+1);
		  setp--; 
		  v[j]=0;
		  k0=k0-c[j]+a[j];k1=k1-d[j]+b[j];k2=k2-e[j]+xxx+yyy;
	    }
	} 
	
}
int main()
{
	freopen("asm_grenade.in","r",stdin);
	freopen("asm_grenade.out","w",stdout);
	cin>>n;
	for(int i=1;i<=n;i++) cin>>a[i];
	for(int i=1;i<=n;i++) cin>>b[i];
	for(int i=1;i<=n;i++) cin>>c[i]; 
	for(int i=1;i<=n;i++) cin>>d[i];
	for(int i=1;i<=n;i++) cin>>e[i];
	cin>>k0>>k1>>k2;
	maxx=k0+k1+k2;
	for(int i=1;i<=n;i++)
	{
		memset(v,0,sizeof(v));
	    int xx=k0-a[i],yy=k1-b[i];
	    int xxx,yyy;
	    if(xx<0)xxx=-xx;
	    if(yy<0)yyy=-yy;
		if(((xx>=0&&yy>=0)||k2>=xxx+yyy)&&!v[i])
		{ 
		  k0+=c[i]-a[i];k1+=d[i]-b[i];k2+=e[i]-xxx-yyy;
		  int sum=k0+k1+k2;
		  maxx=max(maxx,sum);
		  dfs(i,1); 
	    }
	} 
	cout<<maxx;
}