下数据也没错,规范输出还是不行,0分
查看原帖
下数据也没错,规范输出还是不行,0分
763294
Garilly楼主2024/7/15 11:22
#include<bits/stdc++.h>
#define int long long 
using namespace std;
map<string,int>mp;
int n;
string a;
char b[1005];
bool judge(char x[]){
	int sum[6],k=1;
	char xx[1005];
	bool f=1;
	int t=sscanf(x,"%d.%d.%d.%d:%d",&sum[1],&sum[2],&sum[3],&sum[4],&sum[5]);
	if(t!=5) return 0;
	
	for(int i=1;i<5;i++){
		if(sum[i]>255||sum[i]<0){
			return 0;
		}
	}
	if(sum[5]>65535||sum[5]<0)return 0;
	sprintf(xx,"%d.%d.%d.%d:%d",sum[1],sum[2],sum[3],sum[4],sum[5]);
	for(int i=0;i<strlen(xx);i++){
		if(xx[i]!=x[i]){
			f=0;
			break;
		}
	}
	return f;
	
}
main(){
//	ios::sync_with_stdio(0);
//	cin.tie(0),cout.tie(0);
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a>>b;
		if(!judge(b)){
			cout<<"ERR";
			if(i!=n)cout<<'\n';
			continue; 
		}
		if(a=="Server"){
			if(mp[b]){
				cout<<"FAIL";
			}
			else{
				cout<<"OK";
				mp[b]=i;
			}
		}
		else{
			if(mp[b]){
				cout<<mp[b];
			}
			else{
				cout<<"FAIL"; 
			}
		}
		if(i!=n)cout<<'\n';
	}	
	return 0;
} 
2024/7/15 11:22
加载中...