839 | 2022. 01. 20 11:41:42 | kicsiboglar | Ciklikus rácsháló gráf | cpp11 | Elfogadva 40/40 | 65ms | 1956 KiB |
#include <iostream>
#include <vector>
#include <deque>
#define ll long long
using namespace std;
struct adat
{
ll f, s, steps;
};
struct element
{
bool lat;
vector <ll> sz;
};
ll n, m, i, j, a, b, k, M;
int main()
{
cin >> n >> m >> M;
vector <element> x((n * m) + 1);
for (i = 1; i <= n * m; ++i)
{
if (i > m) x[i].sz.push_back(i - m);
else x[i].sz.push_back(i + (n - 1) * m);
if (i <= (n * m) - m) x[i].sz.push_back(i + m);
else x[i].sz.push_back(i - (n - 1) * m);
if (i % m != 0) x[i].sz.push_back(i + 1);
else x[i].sz.push_back(i - m + 1);
if (i % m != 1) x[i].sz.push_back(i - 1);
else x[i].sz.push_back(i + m - 1);
}
ll maxi = (n - 1) * (m - 1);
for (k = 1; k <= M; ++k)
{
cin >> a >> b;
x[a].sz.push_back(b);
x[b].sz.push_back(a);
maxi = -1;
for (i = 1; i <= n * m; ++i)
{
for (j = 1; j <= n * m; ++j) x[j].lat = false;
deque <pair<ll, ll> > v;
v.push_back({ i,0 });
pair<ll, ll> act;
x[i].lat = true;
while (!v.empty())
{
act = v[0];
v.pop_front();
for (auto e : x[act.first].sz)
{
if (!x[e].lat)
{
x[e].lat = true;
if (act.second + 1 > maxi) maxi = act.second + 1;
v.push_back({ e,act.second + 1 });
}
}
}
}
cout << maxi << "\n";
}
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 40/40 | ||||||
1 | Elfogadva | 0/0 | 2ms | 1744 KiB | |||
2 | Elfogadva | 0/0 | 54ms | 1812 KiB | |||
3 | Elfogadva | 2/2 | 1ms | 1852 KiB | |||
4 | Elfogadva | 2/2 | 1ms | 1856 KiB | |||
5 | Elfogadva | 2/2 | 2ms | 1864 KiB | |||
6 | Elfogadva | 2/2 | 2ms | 1868 KiB | |||
7 | Elfogadva | 2/2 | 3ms | 1876 KiB | |||
8 | Elfogadva | 2/2 | 3ms | 1888 KiB | |||
9 | Elfogadva | 2/2 | 3ms | 1884 KiB | |||
10 | Elfogadva | 2/2 | 2ms | 1888 KiB | |||
11 | Elfogadva | 2/2 | 3ms | 1896 KiB | |||
12 | Elfogadva | 2/2 | 13ms | 1904 KiB | |||
13 | Elfogadva | 2/2 | 26ms | 1912 KiB | |||
14 | Elfogadva | 2/2 | 4ms | 1904 KiB | |||
15 | Elfogadva | 2/2 | 25ms | 1920 KiB | |||
16 | Elfogadva | 2/2 | 4ms | 1916 KiB | |||
17 | Elfogadva | 2/2 | 23ms | 1928 KiB | |||
18 | Elfogadva | 2/2 | 8ms | 1928 KiB | |||
19 | Elfogadva | 2/2 | 1ms | 1916 KiB | |||
20 | Elfogadva | 2/2 | 2ms | 1924 KiB | |||
21 | Elfogadva | 2/2 | 9ms | 1936 KiB | |||
22 | Elfogadva | 2/2 | 65ms | 1956 KiB |