求助!!速回答!
查看原帖
求助!!速回答!
1211305
xupeijing_is_king楼主2024/7/12 21:53
#include<bits/stdc++.h>
using namespace std;
struct lb{
	string s;
}fc[1005];//存服务及其编号(数组下标) 
int n;
string s,foc;
string pd[1005];
int main(){
	cin>>n;
	for(int id=1;id<=n;id++){
		cin>>foc>>s;
		int cnt=0,f=1,k=0,qian0=0,first=1,a=0,b=0,c=0,d=0,e=0;
		for(int i=0;s[i];i++){//第一次判断真假 
			if(s[i]=='.') cnt++;
			if(s[i]==':') f=0;
		}
		for(;s[k];k++){//第二次判断真假 
			if(first==2&&s[k]=='0'&&s[k-1]=='0') qian0=1;
			if(s[k]>='0'&&s[k]<='9') a=a*10+(s[k]-'0'),first++;
			else break;
		}
		k++,first=1;
		for(;s[k];k++){
			if(first==2&&s[k]=='0'&&s[k-1]=='0') qian0=1;
			if(s[k]>='0'&&s[k]<='9') b=b*10+(s[k]-'0'),first++;
			else break;
		}
		k++,first=1;
		for(;s[k];k++){
			if(first==2&&s[k]=='0'&&s[k-1]=='0') qian0=1;
			if(s[k]>='0'&&s[k]<='9') c=c*10+(s[k]-'0'),first++;
			else break;
		}
		k++,first=1;
		for(;s[k];k++){
			if(first==2&&s[k]=='0'&&s[k-1]=='0') qian0=1;
			if(s[k]>='0'&&s[k]<='9') d=d*10+(s[k]-'0'),first++;
			else break;
		}
		k++,first=1;
		for(;s[k];k++){
			if(first==2&&s[k]=='0'&&s[k-1]=='0') qian0=1;
			if(s[k]>='0'&&s[k]<='9') e=e*10+(s[k]-'0');
			else break;
		}
		if(a>255||b>255||c>255||d>255||e>65535||qian0||f||cnt!=3){
			cout<<"ERR"<<endl;
			continue;
		}
		//以上述无语的判断地址真假 
		int connect=1;
		if(foc=="Server"){
			for(int i=1;i<id;i++){
				if(fc[i].s==s){
					connect=0;
					break;
				}
			}
			if(connect==0){
				cout<<"FAIL"<<endl;
				continue;
			}
			else{
				cout<<"OK"<<endl;
				fc[id].s=s;//加入列表 
				continue;
			}
		}
		connect=0;
		if(foc=="Client"){
			for(int i=1;i<id;i++){
				if(fc[i].s==s){
					cout<<i<<endl;
					connect=1;
					break;
				}
			}
			if(connect==0) cout<<"FAIE"<<endl;
		}
	}
	return 0;
}

错的测试样例我测了,是对的,无语
#2的样例:
输入
10 Server 207.231.221.77:51007
Server 79.243.216.144:13350 Server 58.119.187.226:51586 Server 247.150.225.186:5558
Server100.248.83.30:3352
Server98.78.97.34:59089
Client 243.9.80.71:15160
Client 178.5.220.233:17605
Client 100.248.83.30:3352
Client 98.78.97.34:59089
输出
OK
OK
OK
OK
OK
OK
FAIL
FAIL
5
6

救救我吧!!
不信的神犇们可以试试哦!

2024/7/12 21:53
加载中...