#include <bits/stdc++.h>
using namespace std;
struct str
{
int x, y, z, m, n;
}arr[100005];
string server(int a, int b, int c, int d, int e, int vnt)
{
if(!(a >= 0 && b >= 0 && b <= 255 && c >= 0 && c <= 255 && d >= 0 && d <= 255 && e >= 0 && e <= 65535))
{
return "ERR";
}
for(int i = 0; i < vnt; i++)
{
if(arr[i].x == a && arr[i].y == b && arr[i].z == c && arr[i].m == d && arr[i].n == e)
{
return "FAIL";
}
}
arr[vnt].x = a;
arr[vnt].y = b;
arr[vnt].z = c;
arr[vnt].m = d;
arr[vnt].n = e;
return "OK";
}
string client(int a, int b, int c, int d, int e, int vnt)
{
bool flag = false;
int num;
if(!(a >= 0 && b >= 0 && b <= 255 && c >= 0 && c <= 255 && d >= 0 && d <= 255 && e >= 0 && e <= 65535))
{
return "ERR";
}
for(int i = 0; i < vnt; i++)
{
if(arr[i].x == a && arr[i].y == b && arr[i].z == c && arr[i].m == d && arr[i].n == e)
{
flag = true;
num = i + 1;
}
}
if(flag)
{
string universal = to_string(num);
return universal;
}
return "FAIL";
}
int main()
{
int n;
scanf("%d", &n);
for(int i = 0; i < n; i++)
{
string op;
cin >> op;
int a, b, c, d, e;
scanf("%d.%d.%d.%d:%d", &a, &b, &c, &d, &e);
if(op == "Server")
{
cout << server(a, b, c, d, e, i) << endl;
}
if(op == "Client")
{
cout << client(a, b, c, d, e, i) << endl;
}
}
return 0;
}
https://www.luogu.com.cn/record/175592958