样例1正常通过,样例2莫名其妙吞了最后一组数据,然后还正常输出10个结果(不解)大佬康康我的代码吧UmU
#include<bits/stdc++.h>
using namespace std;
int n;
string lx,data[10005],ans[10005];
int ccin(int i){
int a,b,c,d,e;
cin>>lx;
int num=scanf("%d.%d.%d.%d:%d",&a,&b,&c,&d,&e);
stringstream s,ss;
s<<a<<'.'<<b<<'.'<<c<<'.'<<d<<':'<<e;
if((num!=5)||(a<0||a>255)||(b<0||b>255)||(c<0||c>255)||(d<0||d>255)||(e<0||e>65535)){
ans[i]="ERR\n";
return 0;
}
else if(lx=="Server") data[i]=s.str();
if(lx=="Server"){
for(int j=1;j<=i-1;j++){
if(s.str()==data[j]){
ans[i]="FAIL\n";
return 0;
}
}
ans[i]="OK\n";
}
if(lx=="Client"){
for(int j=1;j<=i-1;j++){
if(s.str()==data[j]){
ss<<j;
ans[i]=ss.str()+"\n";
return 0;
}
}
ans[i]="FAIL\n";
}
}
int main(){
cin>>n;
for(int i=1;i<=n;i++) ccin(i);
for(int i=1;i<=n;i++) cout<<ans[i];
}