20pts 求助
查看原帖
20pts 求助
972511
Ljh421楼主2024/8/13 10:19
#include<bits/stdc++.h>
using namespace std;
string str;
int k,a[20][5],b[20];
long long ans=1,bian;
void dfs(int x){
	for(int i=1;i<=k;i++){
		if(x==a[i][1]&&b[x]==0){
			bian++;
			b[x]=1;
			dfs(a[i][2]);
		}
	}
}
int main(){
	
	cin>>str>>k;
	for(int i=1;i<=k;i++){
		cin>>a[i][1]>>a[i][2];
	}
	for(long long i=0;i<str.length()-1;i++){
		bian=1;
		memset(b,0,sizeof(b));
		dfs(str[i]-'0');
		ans*=bian;
	}
	cout<<ans;
    
    return 0;
}

第一个AC,其余全WA

2024/8/13 10:19
加载中...