逆天数据
查看原帖
逆天数据
917683
rnf5114楼主2025/7/31 22:51

暴力做法一点优化都没有的大常数代码直接过了

#include<bits/stdc++.h>
using namespace std;
long long Mod=10000;
long long fail[100010],n,t,m,a[100010];
long long qpow(long long di,long long mi){
	if(mi==0)
		return 1;
	if(mi==1)
		return di;
	long long tmp1=qpow(di,mi>>1),tmp2=qpow(di,mi&1);
	return tmp1*tmp1%Mod*tmp2%Mod;
}
int main(){
	cin>>n>>t;
	while(t--){
		cin>>m;
		for(int i=1;i<=m;i++)
			cin>>a[i];	
		long long ans=0;
		for(int i=1;i<=m;i++){
			int flag=1,cnt=i;
			for(int j=m-i+1;j<=m;j++){
				if(a[j]!=a[i-cnt+1]){
					flag=0;
					break;
				}
				cnt--;
			}
			if(flag)
				ans+=qpow(n,i),ans%=Mod;
		}
		if(ans<1000){
			long long cnt=0,tmp=ans;
			while(ans)
				cnt++,ans/=10;
			for(int i=1;i<=4-cnt;i++)
				cout<<"0";
			cout<<tmp<<"\n";
		}
		else
			cout<<ans<<"\n";
			
	}
}
2025/7/31 22:51
加载中...