社区讨论
20求调
P7911[CSP-J 2021] 网络连接参与者 2已保存回复 8
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 8 条
- 当前快照
- 1 份
- 快照标识符
- @lo118jq7
- 此快照首次捕获于
- 2023/10/22 13:32 2 年前
- 此快照最后确认于
- 2023/11/02 13:03 2 年前
CPP
#include<bits/stdc++.h>
using namespace std;
int server[65540];
string s[1005];
int main(){
//freopen("network.in","r",stdin);
//freopen("network.out","w",stdout);
int n,k=0;
cin>>n;
memset(server,sizeof(server),0);
while(n--){
string w;
k++;
cin>>w>>s[k];
bool b=true;
int x=0,y=0,num=0;
for(int i=0;i<s[k].size();i++){
if((s[k][i]=='.'||s[k][i]==':')&&s[k][i+1]=='0'&&s[k][i+2]=='0'){
b=false;
//cout<<"qiandao"<<endl;
break;
}
if(s[k][i]=='.'){
x++;
//cout<<endl;
//cout<<"fuhao"<<' '<<num<<endl;
if(num>255){
//cout<<s[i]<<' '<<num<<endl;
b=false;
break;
}
if(x>3){
b=false;
break;
}
num=0;
}
else if(s[k][i]==':'){
y++;
//cout<<endl;
//cout<<"fuhao"<<' '<<num<<endl;
if(num>255){
//cout<<s[i]<<' '<<num<<endl;
b=false;
break;
}
if(y>1){
b=false;
break;
}
num=0;
}
else {
//cout<<"jiahe"<<endl;
num=num*10+s[k][i]-'0';
//cout<<num<<' ';
}
}
//cout<<endl<<endl;
if(num>65535){
b=false;
}
if(b==false){
cout<<"ERR"<<endl;
continue;
}
else{
if(w=="Server"){
if(server[num]==0){
server[num]=k;
cout<<"OK"<<endl;
continue;
}
else{
cout<<"FAIL"<<endl;
continue;
}
}
else{
if(server[num]!=0){
//cout<<num<<' ';
if(s[k]==s[server[num]]){
cout<<server[num]<<endl;
}
else{
cout<<"FAIL"<<endl;
}
continue;
}
else{
cout<<"FAIL"<<endl;
continue;
}
}
}
}
}
回复
共 8 条回复,欢迎继续交流。
正在加载回复...