mxqz,暴力都写挂了/kk
查看原帖
mxqz,暴力都写挂了/kk
105865
Jur_Cai楼主2021/9/11 13:18
#include<iostream>
#include<cstdio>
using namespace std;
char s[1005][1005];
int l[1005];
bool unhave[20],tmp[20];
int main() {
//	freopen("code.in","r",stdin);
//	freopen("code.out","w",stdout);
	int n;
	scanf("%d",&n);
	for(int i=1; i<=n; i++) {
		scanf("%d",&l[i]);
		scanf("%s",s[i]+1);
	}
	int now=1,ans=0;
	for(int i=0; i<=9; i++) {
		for(int j=0; j<=9; j++) {
			for(int k=0; k<=9; k++) {
				for(int p=0; p<=9; p++) unhave[p]=0;
				for(int t=1; t<=n; t++) {
					now=1;
					for(int p=0; p<=9; p++) tmp[p]=0;
					for(int p=1; p<=l[t]; p++) {
						if(now==1) {
							if(i==s[t][p]-'0') now++;
						}
						if(now==2) {
							if(j==s[t][p]-'0') now++;
						}
						if(now==3) {
							if(k==s[t][p]-'0') now++;
						}
						if(now==4) tmp[s[t][p]-'0']=1;
					}
					if(now!=4) break;
					for(int p=0; p<=9; p++)
						if(tmp[p]==0) unhave[p]=1;
				}
				if(now<3) break;
				if(now==3) continue;
				for(int p=0; p<=9; p++) if(!unhave[p]) ans++;
			}
			if(now<2) break;
		}
	}
	cout<<ans;
	return 0;
}

i,j,k 为枚举前三位数,now 为当前匹配到的位置,吸氧后没 T,但wa了,答案统计少了,求助大佬。

2021/9/11 13:18
加载中...