6356 2023. 11. 23 19:21:53 MrChipser Rácsháló gráf cpp11 Elfogadva 50/50 54ms 4824 KiB
#include <iostream>
#include <vector>
#include <queue>

using namespace std;
int n,m,k;
int csm[200][200];
vector<int> adj[200];
int bfs()
{
    int mtav = 0;
    for(int j = 0; j < n*m; j++)
    {
    int votma[n*m]={0};
    int tav[n*m] = {0};
    queue<int>q;
    q.push(j);
    votma[j]=1;
    while(!q.empty())
    {
        int akt = q.front();
        //cout << akt << " ";
        q.pop();
        for(auto x : adj[akt])
        {
            if(votma[x]==0)
            {
                q.push(x);
                votma[x]=1;
                tav[x]=tav[akt]+1;
                //cout << tav[i] << " " << tav[akt] << " " << i  << " " << akt<< endl;
                if(tav[x]>mtav)
                    mtav=tav[x];
            }
        }
    }
    if(mtav==(n-1)+(m-1))
        break;
    }
    //for(int i = 0; i < n*m; i++)
     //   cout << tav[i] << " ";
    //cout << endl;
    return mtav;
}

int main()
{
    cin >> n >> m >> k;
    for(int i = 0; i < n*m; i++)
        for(int j = 0; j < n*m; j++)
            csm[i][j]=0;
    for(int i = 0; i < n*m; i++)
    {
        if(i < n*m-m)
        {
            csm[i][i+m]=1;
            csm[i+m][i]=1;
        }
        if((i+1)%m!=0)
        {
            //cout << i << endl;
            csm[i][i+1]=1;
            csm[i+1][i]=1;
        }
    }
    for(int i = 0; i < n*m; i++)
        for(int j = 0; j < n*m; j++)
        {
            if(csm[i][j]==1)
            {
                adj[i].push_back(j);
            }
        }
    //for(int i = 0; i < n*m; i++)
   // {
   //     for(int j = 0; j < n*m; j++)
   //         cout << csm[i][j];
   //     cout << endl;
  //  }
    vector<int>maxut;
    for(int i = 0; i < k; i++)
    {
        int x,y;
        cin >> x >> y;
        adj[x-1].push_back(y-1);
        adj[y-1].push_back(x-1);
        maxut.push_back(bfs());

    }
    for(int i = 0; i < maxut.size(); i++)
        cout << maxut[i] << endl;
    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1976 KiB
2 Elfogadva 0/0 52ms 2536 KiB
3 Elfogadva 2/2 3ms 2252 KiB
4 Elfogadva 2/2 3ms 2464 KiB
5 Elfogadva 2/2 3ms 2676 KiB
6 Elfogadva 2/2 3ms 2888 KiB
7 Elfogadva 2/2 4ms 3292 KiB
8 Elfogadva 2/2 4ms 3500 KiB
9 Elfogadva 2/2 4ms 3456 KiB
10 Elfogadva 2/2 4ms 3448 KiB
11 Elfogadva 2/2 4ms 3516 KiB
12 Elfogadva 2/2 9ms 3720 KiB
13 Elfogadva 3/3 26ms 3768 KiB
14 Elfogadva 3/3 6ms 3704 KiB
15 Elfogadva 3/3 26ms 3984 KiB
16 Elfogadva 3/3 4ms 3896 KiB
17 Elfogadva 3/3 23ms 4052 KiB
18 Elfogadva 3/3 9ms 4004 KiB
19 Elfogadva 3/3 3ms 4248 KiB
20 Elfogadva 3/3 3ms 4472 KiB
21 Elfogadva 3/3 10ms 4720 KiB
22 Elfogadva 3/3 54ms 4824 KiB