dl救我,在线等不急
查看原帖
dl救我,在线等不急
1255496
__LIAM_olivers__楼主2025/2/7 19:09
#include<bits/stdc++.h>
using namespace std;
int ai[25];
int dfs(int ans,int x,int y,int s,int n){
	if(x>n || y>n){
		return ans+ai[x]+ai[y];
	}
    if(ai[x]>ai[y]){
    	ai[x]-=ai[y];
        return dfs(ans+ai[y],x,s,s+1,n);
	}
	if(ai[y]>ai[x]){
		ai[y]-=ai[x];
		return dfs(ans+ai[x],s,y,s+1,n);
	}
	return dfs(ans+ai[x],s,s+1,s+2,n);
}
int main(){
	int a,b,c,d,ans=0;
	cin>>a>>b>>c>>d;
    for(int i=1;i<=a;i++)cin>>ai[i];
    ans+=dfs(0,1,2,3,a);
    memset(ai,0,sizeof (ai));
    for(int i=1;i<=b;i++)cin>>ai[i];
    ans+=dfs(0,1,2,3,b);
    memset(ai,0,sizeof (ai));
    for(int i=1;i<=c;i++)cin>>ai[i];
    ans+=dfs(0,1,2,3,c);
    memset(ai,0,sizeof (ai));
	for(int i=1;i<=d;i++)cin>>ai[i];
	ans+=dfs(0,1,2,3,d);
	cout<<ans<<endl;
	return 0;
}

样例过了,自己也造了样例,对的,但就是过不了

2025/2/7 19:09
加载中...