蒟蒻求助QAQ
#include <iostream>
using namespace std;
int a[35];
int b[20];
int c[20];
int n[11];
int k;
int ans;
string s;
void dfs(int num){
if(num>=s.length()){
ans++;
return ;
}
for(int i=1;i<=2;i++){
int temp = a[num];
if(i==2){
a[num] = n[a[num]];
}
dfs(num+1);
a[num] = temp;
}
}
int main(){
freopen("input.in","r",stdin);
freopen("output.out","w",stdout);
cin>>s;
for(int i=1;i<=s.length();i++){
a[i] = s[i] - '0';
}
cin>>k;
for(int i=1;i<=k;i++){
cin>>b[i]>>c[i];
n[b[i]] = c[i];
}
dfs(1);
cout<<ans<<endl;
return 0;
}
不知道哪里错了,测试样例对的