WA Code:
#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
const long long mod=998244353;
const int N=105;
long long x,n,m,k,ans;
long long a[N],b[N];
void dfs(int step,long long sum) {
if(step==k+1) {
ans=max(ans%mod,sum%mod);
return ;
}
for(int i=1; i<=n; i++) {
dfs(step+1,sum+a[i]);
dfs(step,sum);
}
for(int i=1; i<=m; i++) {
dfs(step+1,sum*b[i]);
dfs(step,sum);
}
}
int main() {
cin>>x>>n>>m>>k;
for(int i=1; i<=n; i++) cin>>a[i];
for(int i=1; i<=m; i++) cin>>b[i];
dfs(1,x);
cout<<ans<<endl;
return 0;
}
输出不了,返回值极大。