55pts!求救
查看原帖
55pts!求救
1414711
wrixeo楼主2024/9/1 15:36
#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

2024/9/1 15:36
加载中...