65
查看原帖
65
1283897
eggshen楼主2024/9/30 16:28
#include<bits/stdc++.h>
using namespace std;
long long n,a[1010][5],c,s=4,t=1,d=3;
char b[1010][4],e[5];
string op[1010],ab[1010];
int main(){
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>op[i]>>ab[i];
	}
	for(int i=0;i<n;i++){
		c=0;
		for(int j=0;j<ab[i].size();j++){
			if(ab[i][j]==0&&ab[i][j+1]<='9'&&'0'<=ab[i][j+1]){
				c=1;
			}
		}
		if(c==1) cout<<"ERR"<<endl;
		else{
			s=4;
			t=1;
			d=3;
			for(int j=ab[i].size()-1;j>=0;j--){
				if(ab[i][j]>='0'&&'9'>=ab[i][j]){
					a[i][s]+=int((ab[i][j])-48)*t;
					t*=10;
				}
				else{
					b[i][d]=ab[i][j];
					s--;
					t=1;
					d--;
				}
			}
			if(!(d==-1&&a[i][0]>=0&&a[i][0]<=255&&a[i][1]>=0&&a[i][1]<=255&&a[i][2]>=0&&a[i][2]<=255&&a[i][3]>=0&&a[i][3]<=255&&a[i][4]<=65535&&b[i][0]=='.'&&b[i][1]=='.'&&b[i][2]=='.'&&b[i][3]==':')){
				cout<<"ERR"<<endl;
			}
			else{
				
				if(op[i][0]=='S'){
					c=0;
					for(int j=0;j<i;j++){
						if(b[j][1]=='a'&&a[i][1]==a[j][1]&&a[i][0]==a[j][0]&&a[i][2]==a[j][2]&&a[i][3]==a[j][3]&&a[i][4]==a[j][4]){
							cout<<"FAIL"<<endl;
							c=1;
							break;
						}
					}
					if(c==0) {
						cout<<"OK"<<endl;
						b[i][1]='a';
					}
				}
				else{
					c=0;
					for(int j=0;j<i;j++){
						if(b[j][1]=='a'&&a[i][1]==a[j][1]&&a[i][0]==a[j][0]&&a[i][2]==a[j][2]&&a[i][3]==a[j][3]&&a[i][4]==a[j][4]){
							c=1;
							cout<<j+1<<endl;
							break;
						}
					}
					if(c==0) cout<<"FAIL"<<endl;
				}
			}
		}
	}
	return 0;
}
2024/9/30 16:28
加载中...