题解!!!
2025-08-30 10:47:38
发布于:浙江
1阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
int a,b,n,ans,x[40]={0,990,1010,1970,2030,2940,3060,3930,4060,4970,5030,5990,6010,7000},bo[40];
void dfs(int k){
for(int i=1;i<=n+13;i++){
if(x[i]>=k+a&&x[i]<=k+b&&bo[i]==0){
if(x[i]==7000){
ans++;
return;
}
bo[i]=1;
dfs(x[i]);
bo[i]=0;
}
else if(k+a>=7000){
ans++;
return;
}
}
return;
}
int main(){
cin>>a>>b>>n;
for(int i=13;i<=n+12;i++) {
cin>>x[i];
}
dfs(0);
cout<<ans;
return 0;
}
这里空空如也
有帮助,赞一个