社区讨论
65re仇眺
P7911[CSP-J 2021] 网络连接参与者 2已保存回复 9
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 9 条
- 当前快照
- 1 份
- 快照标识符
- @m2n4urrg
- 此快照首次捕获于
- 2024/10/24 18:00 去年
- 此快照最后确认于
- 2025/11/04 16:20 4 个月前
CPP
#include<bits/stdc++.h>
#define int long long
#define endl '\n'
using namespace std;
template<typename T> void read(T&x){
int sign=1;x=0;char c;
do{
c=getchar();
if(c=='-') sign=-1;
}while(!isdigit(c));
do{
x=x*10+c-'0';
c=getchar();
}while(isdigit(c));
x*=sign;
}
int n;
string op,s;
map<string,int> t;
signed main(){
// freopen("1.in","r",stdin);
// freopen("1.out","w",stdout);
read(n);
for(int k=1;k<=n;k++){
cin>>op>>s;
bool f=0,ff=0;
int dian=0,mao=0;
int x=0;
for(int i=0;i<s.size();i++){
if(s[i]=='.'){
dian++;
}
if(s[i]==':'){
mao++;
}
if(isdigit(s[i])){
x=x*10+s[i]-'0';
if(x==0){
ff=1;
}
else if(ff==1){
// cout<<i<<endl;;
f=1;
break;
}
}
if(!isdigit(s[i])){
if(x<0||x>255){
f=1;
break;
}
x=0;
ff=0;
}
}
if(x<0||x>65535){
f=1;
}
if(dian!=3||mao!=1){
f=1;
}
// cout<<dian<<" "<<mao<<endl;
if(f==1){
cout<<"ERR"<<endl;
continue;
}
if(op=="Server"){
if(t[s]==0){
t[s]=k;
cout<<"OK"<<endl;
}
else if(t[s]!=0){
cout<<"FAIL"<<endl;
}
}
if(op=="Client"){
if(t[s]!=0){
cout<<t[s]<<endl;
}
if(t[s]==0){
cout<<"FAIL"<<endl;
}
}
}
return 0;
}
回复
共 9 条回复,欢迎继续交流。
正在加载回复...