70ptsTLE代码求调(玄关)
查看原帖
70ptsTLE代码求调(玄关)
1414964
dhlsgjr楼主2024/11/18 13:21

70ptsTLE代码求调

#include<iostream>
#include<stack>
using namespace std;
bool x[100000005],f;
int s,t,y;
int main(){
	
	for(int i=0;i<=9;i++)
	{
		for(int i2=0;i2<=9;i2++)
		{
			for(int i3=0;i3<=9;i3++)
			{
				for(int i4=0;i4<=9;i4++)
				{
					for(int i5=0;i5<=9;i5++)
					{
						for(int i6=0;i6<=9;i6++)
						{
							for(int i7=0;i7<=9;i7++)
							{
								for(int i8=0;i8<=9;i8++)
								{
								s=i*1e7+i2*1e6+i3*1e5+i4*1e4+i5*1e3+i6*1e2+i7*10+i8;
								if(s%7==0)x[s]=1;
								if(i3==7||i==7||i2==7||i4==7||i5==7||i6==7||i7==7||i8==7)
								{
									x[s]=1;
								}
								}
							}
						}
					}
				}	
			}
		}
	}
	cin>>t;
	while(t--)
	{
		cin>>y;
		f=1;
		for(int i=1;i*i<=y;i++)
		{
			if(y%i==0)
			{
			if(x[i]||x[y/i])
			{cout<<"-1"<<endl;
			f=0;
			break;
			}
			}
		}
		if(f){
			for(int j=y+1;;j++)
			{
				if(x[j]==0)
				{
					f=1; 
				for(int i=1;i*i<=j;i++)
			{
					if(j%i==0)
				{
					if(x[i]||x[j/i])
					{
					f=0;
					break;
					}
				}
			}
				if(f){
				cout<<j<<endl;
				break;
			}
				}
				
			}
		}
	}
	return 0;
}
2024/11/18 13:21
加载中...