stickfigures @ 2024-12-01 13:55:02
#include<bits/stdc++.h>
using namespace std;
#define int long long
int ans;
struct node{
int a,b;
};
node x[11];
int n;
void dfs(int z){
if(z==n+1)return;
else if(z==1)dfs(z+1);
else if(z==n){
ans+=x[z-1].b;
dfs(z+1);
}
else{
ans=ans+max(x[z-1].b,x[z].a);
dfs(z+1);
}
}
signed main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
cin>>n;
for(int i=1;i<=n;i++){
cin>>x[i].a;
}
for(int i=1;i<=n;i++){
cin>>x[i].b;
}
dfs(1);
cout<<ans+n;
return 0;
}
第二个样例怎么算都是九个,牛可不可能打乱输入时的顺序,有没有哪位大佬指导一下。 ————一名五级蒟蒻