QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#111071 | #6559. A Tree and Two Edges | KhNURE_KIVI# | AC ✓ | 113ms | 15472kb | C++20 | 5.1kb | 2023-06-05 19:06:05 | 2023-06-05 19:06:07 |
Judging History
answer
//#pragma GCC optimize("Ofast", "unroll-loops")
//#pragma GCC target("sse", "sse2", "sse3", "ssse3", "sse4")
#include <bits/stdc++.h>
#define all(a) a.begin(),a.end()
#define len(a) (int)(a.size())
#define mp make_pair
#define pb push_back
#define fir first
#define sec second
#define fi first
#define se second
using namespace std;
typedef pair<int, int> pii;
typedef long long ll;
typedef long double ld;
template<typename T>
inline bool umin(T &a, T b) {
if (b < a) {
a = b;
return true;
}
return false;
}
template<typename T>
inline bool umax(T &a, T b) {
if (a < b) {
a = b;
return true;
}
return false;
}
#ifdef LOCAL
#define D for (bool _FLAG = true; _FLAG; _FLAG = false)
#define LOG(...) print(#__VA_ARGS__" ::", __VA_ARGS__) << endl
template <class ...Ts> auto &print(Ts ...ts) { return ((cerr << ts << " "), ...); }
#else
#define D while (false)
#define LOG(...)
#endif // LOCAL
const int max_n = 1e5 + 11, inf = 1000111222;
struct dsu {
public:
int n;
vector <int> p, cnt;
inline void make_set (int v) {
p[v] = v;
}
dsu (int n) : n(n) {
p.resize(n);
cnt.assign(n, 1);
for (int i = 0; i < n; i++) {
make_set(i);
}
}
inline int get (int v) {
if (p[v] == v) return v;
return p[v] = get(p[v]); /// compressing path
}
inline bool unite (int a, int b) {
a = get(a);
b = get(b);
if (a == b) return false;
if (cnt[a] > cnt[b]) {
swap(a, b);
}
p[a] = b;
cnt[b] += cnt[a];
return true;
}
};
int L = 0, n, timer = 0;
vector <vector <int> > edge, up;
vector <int> tin, tout;
inline void dfs_lca (int v, int p = -1) {
tin[v] = timer++;
up[v].resize(L + 1);
up[v][0] = p == -1 ? v : p;
for (int i = 1; i <= L; i++) {
up[v][i] = up[up[v][i - 1]][i - 1];
}
for (int to : edge[v]) {
if (to == p) continue;
dfs_lca(to, v);
}
tout[v] = timer;
}
inline bool upper (int a, int b) {
return tin[a] <= tin[b] && tout[b] <= tout[a];
}
inline int lca (int a, int b) {
if (upper(a, b)) return a;
if (upper(b, a)) return b;
for (int i = L; i >= 0; i--) {
if (!upper(up[a][i], b)) {
a = up[a][i];
}
}
return up[a][0];
}
inline void set_L () {
while ((1 << L) <= n) ++L;
}
inline void lca_prepare (int root = 0) {
set_L();
dfs_lca(root);
}
inline bool cmp (int a, int b) {
return tin[a] < tin[b];
}
vector <vector <int> > e_vt;
vector <int> vv;
inline int virt_tree (vector <int> ver) {
/// lca_prepare() at first
sort(all(ver), cmp);
int k = len(ver);
for (int i = 0; i + 1 < k; i++) {
ver.pb(lca(ver[i], ver[i + 1]));
}
sort(all(ver), cmp);
ver.erase(unique(all(ver)), ver.end());
vector <int> q;
q.pb(ver[0]);
for (int i = 1; i < len(ver); i++) {
int u = ver[i];
while (len(q) >= 2 && !upper(q.back(), u)) {
e_vt[q[len(q) - 2]].pb(q.back());
e_vt[q.back()].pb(q[len(q) - 2]);
q.pop_back();
}
q.pb(u);
}
while (len(q) >= 2) {
e_vt[q[len(q) - 2]].pb(q.back());
e_vt[q.back()].pb(q[len(q) - 2]);
q.pop_back();
}
vv = ver;
return q[0];
}
bool used[max_n] = {};
inline int go (int a, vector <pii> &have, int b) {
if (a == b) {
return 1;
}
used[a] = 1;
int cnt = 0;
for (int to : e_vt[a]) {
if (!used[to]) {
cnt += go(to, have, b);
}
}
for (auto &j : have) {
if (j.first == a && !used[j.second]) {
cnt += go(j.second, have, b);
}
if (j.second == a && !used[j.first]) {
cnt += go(j.first, have, b);
}
}
used[a] = 0;
return cnt;
}
int main() {
// freopen("input.txt", "r", stdin);
// freopen("output.txt", "w", stdout);
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
int q;
cin >> n >> q;
int m = n + 1;
edge.resize(n);
up.resize(n);
tin.resize(n);
tout.resize(n);
e_vt.resize(n);
vector <pii> have;
set <int> good;
dsu t(n);
for (int i = 0, a, b; i < m; i++) {
cin >> a >> b;
--a, --b;
if (!t.unite(a, b)) {
have.pb({a, b});
good.insert(a);
good.insert(b);
}
else {
edge[a].pb(b);
edge[b].pb(a);
}
}
lca_prepare();
for (int i = 0, a, b; i < q; i++) {
vv.clear();
cin >> a >> b;
--a, --b;
vector <int> c(all(good));
c.pb(a);
c.pb(b);
sort(all(c));
c.erase(unique(all(c)), c.end());
int root = virt_tree(c);
int ans = go(a, have, b);
for (auto &j : vv) {
e_vt[j].clear();
}
cout << ans << '\n';
}
}
詳細信息
Test #1:
score: 100
Accepted
time: 2ms
memory: 3520kb
input:
4 6 1 2 1 3 1 4 2 3 2 4 1 2 1 3 1 4 2 3 2 4 3 4
output:
3 3 3 3 3 4
result:
ok 6 lines
Test #2:
score: 0
Accepted
time: 2ms
memory: 3444kb
input:
6 4 1 2 1 3 1 6 2 3 3 4 3 5 4 5 1 2 1 3 1 4 1 6
output:
2 2 4 1
result:
ok 4 lines
Test #3:
score: 0
Accepted
time: 106ms
memory: 14356kb
input:
50000 50000 11561 23122 14261 28523 24407 48814 17947 35894 14803 29607 19557 39115 12415 24830 9583 19167 18397 36794 439 878 18040 36080 17150 34300 7922 15845 18938 37877 18625 37250 6459 12919 9818 19636 3579 7158 21323 42646 23882 47764 13603 27207 8353 16707 15907 31814 20935 41871 11686 23372...
output:
4 3 3 4 4 3 1 3 4 1 3 4 3 4 3 3 1 3 3 3 4 4 4 3 3 3 4 3 3 3 1 3 3 3 3 4 4 4 4 3 4 3 3 3 4 3 4 4 4 4 3 4 4 4 4 3 3 3 4 4 4 4 4 4 3 4 3 4 1 4 1 1 4 3 3 4 3 3 1 4 3 3 4 4 3 3 4 4 4 3 4 3 4 4 4 4 4 3 4 3 3 3 1 3 4 4 3 4 3 4 3 3 4 1 4 3 3 3 4 4 4 4 3 3 3 3 3 4 4 4 4 3 3 4 3 4 4 3 3 4 4 4 1 3 3 3 3 4 4 3 ...
result:
ok 50000 lines
Test #4:
score: 0
Accepted
time: 112ms
memory: 14456kb
input:
50000 50000 1730 3460 17535 35071 14108 28216 20630 41260 2091 4182 8112 16225 21373 42746 6685 13371 21142 42284 12168 24337 22564 45128 16103 32207 9254 18508 21369 42739 1955 3911 13696 27392 3929 7858 1777 3555 23382 46764 830 1660 17722 35444 11495 22991 10184 20369 13697 27395 24728 49456 4037...
output:
1 1 3 3 3 4 4 4 4 4 3 3 3 4 1 3 4 3 3 1 3 3 4 3 1 4 3 3 4 3 3 4 4 4 1 1 4 1 3 4 3 1 4 4 3 3 3 4 1 4 4 1 3 1 3 3 3 1 1 3 3 3 3 3 4 3 4 4 3 3 4 4 4 3 3 4 4 4 3 4 3 3 3 3 3 3 3 3 4 4 1 4 3 4 1 4 4 4 4 3 4 1 4 4 3 4 3 4 3 4 3 1 4 3 1 1 3 3 4 4 1 3 3 3 4 3 3 4 4 4 4 4 3 3 4 3 4 1 1 3 4 4 3 4 4 3 3 4 4 3 ...
result:
ok 50000 lines
Test #5:
score: 0
Accepted
time: 110ms
memory: 14400kb
input:
50000 50000 21879 43758 12510 25020 2593 5187 16048 32096 9697 19394 12606 25212 3860 7720 8231 16462 23983 47966 10852 21705 6919 13839 1385 2770 4040 8080 14298 28596 22248 44496 4245 8490 14486 28972 11445 22891 21557 43114 20946 41892 23374 46749 78 157 4617 9234 8198 16396 12228 24456 16125 322...
output:
4 2 2 2 4 2 1 2 2 2 4 2 1 2 4 2 2 4 4 4 2 1 4 2 2 4 2 4 2 2 1 4 2 2 1 1 4 4 2 2 2 4 2 4 2 4 4 4 2 2 4 2 2 4 1 4 1 4 4 2 4 4 2 2 2 2 4 2 2 1 2 1 4 2 4 4 4 4 2 2 2 4 4 1 2 1 2 4 4 4 2 2 2 2 4 4 4 4 4 2 4 2 4 4 2 4 4 4 4 4 2 4 2 2 4 4 4 1 2 2 2 4 1 2 4 1 2 2 4 2 4 4 2 4 2 2 4 1 4 1 2 4 2 2 4 4 4 4 4 4 ...
result:
ok 50000 lines
Test #6:
score: 0
Accepted
time: 93ms
memory: 14356kb
input:
50000 50000 1451 2795 8910 29108 638 5810 24117 38535 2769 44109 7603 8789 14090 14819 5315 11076 22885 25853 26110 39470 1513 20322 13635 44414 1284 5229 5998 19700 1872 45691 5872 37168 4991 6456 34921 41632 16532 30269 3118 4987 2732 20486 26292 44061 2054 41607 20367 21071 33204 36717 35801 4725...
output:
2 2 4 4 4 4 4 2 4 4 4 4 4 4 4 2 1 4 4 1 4 4 1 4 4 2 4 2 4 2 1 4 4 4 4 1 1 1 4 2 4 1 4 2 4 1 1 2 2 2 4 4 1 1 1 4 1 1 4 2 4 4 1 4 2 2 4 4 4 2 1 4 4 1 1 4 4 1 2 1 2 1 4 2 1 2 4 2 4 4 4 4 4 1 2 2 1 1 1 4 2 1 4 4 2 4 2 4 4 1 1 4 4 2 2 1 2 1 1 4 4 4 4 4 4 1 1 1 4 2 4 1 2 2 1 4 4 4 4 4 4 1 4 4 2 1 2 2 2 1 ...
result:
ok 50000 lines
Test #7:
score: 0
Accepted
time: 94ms
memory: 14412kb
input:
50000 50000 1106 3307 13115 16051 30404 45806 2295 20076 3525 6384 9118 24628 3288 26835 17933 47506 26180 48256 23161 45529 10483 15545 5252 35302 10105 16247 14301 26402 104 216 562 29098 1517 16503 1494 5468 8057 47252 5582 15425 8766 41483 10952 31098 20891 49612 13088 18868 18880 28314 8650 208...
output:
1 2 4 2 4 4 2 4 2 4 4 4 2 2 2 2 4 2 4 4 4 2 4 1 2 1 4 4 1 2 4 2 1 4 4 4 4 4 2 4 4 4 4 1 2 1 2 1 4 4 2 2 4 4 1 4 4 4 2 2 2 1 4 2 4 2 4 4 4 2 2 4 2 2 1 4 4 2 4 4 4 2 1 4 1 4 4 4 4 4 4 1 2 2 2 4 1 2 1 4 2 4 2 4 4 4 1 4 2 4 4 2 4 2 4 2 4 4 1 4 4 2 1 4 4 4 2 4 2 2 2 2 2 4 4 2 4 4 2 2 4 1 2 1 4 4 2 2 2 4 ...
result:
ok 50000 lines
Test #8:
score: 0
Accepted
time: 95ms
memory: 15472kb
input:
50000 50000 36923 36924 2905 2906 20948 20949 17459 17460 37562 37563 48652 48653 19674 19675 5083 5084 18973 18974 6652 6653 14171 14172 10957 10958 29643 29644 18578 18579 8742 8743 28856 28857 3692 3693 9716 9717 26628 26629 10272 10273 3581 3582 5952 5953 8810 8811 48242 48243 49449 49450 22461 ...
output:
3 3 3 4 4 3 4 3 3 4 3 3 4 1 3 3 3 4 4 1 4 3 3 1 4 4 3 3 4 1 4 3 4 3 1 3 3 4 3 3 4 3 4 3 3 4 1 4 4 4 4 3 3 1 4 4 1 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 4 1 4 4 1 4 4 4 3 4 4 4 3 3 1 3 4 4 4 4 4 3 4 3 4 4 3 1 4 4 3 4 4 1 4 4 4 3 3 4 3 4 4 4 3 3 4 3 3 3 4 4 3 4 3 4 4 3 4 3 3 4 1 4 3 4 4 4 4 4 1 4 4 1 1 4 4 4 ...
result:
ok 50000 lines
Test #9:
score: 0
Accepted
time: 79ms
memory: 15412kb
input:
50000 50000 24442 24443 33810 33811 1074 1075 19395 19396 17355 17356 18062 18063 16633 16634 14075 14076 16668 16669 42955 42956 2381 2382 8174 8175 33065 33066 23490 23491 12964 12965 43083 43084 34043 34044 3067 3068 32847 32848 34631 34632 20740 20741 5545 5546 36224 36225 40474 40475 8726 8727 ...
output:
3 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 3 4 1 1 3 4 4 3 4 4 4 1 4 3 4 4 4 3 4 4 4 4 4 3 3 4 4 3 4 4 1 3 1 4 4 4 4 1 3 4 4 4 4 1 3 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 1 3 4 4 1 4 4 4 4 1 4 1 4 4 1 4 1 3 4 4 4 4 4 3 4 4 4 4 3 3 1 4 3 4 3 3 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 3 1 4 3 3 3 4 4 4 4 4 4 4 4 3 4 1 3 4 3 ...
result:
ok 50000 lines
Test #10:
score: 0
Accepted
time: 97ms
memory: 15224kb
input:
50000 50000 40842 40843 12739 12740 46074 46075 30742 30743 22435 22436 4320 4321 9400 9401 40706 40707 8828 8829 18753 18754 49910 49911 39576 39577 8444 8445 25799 25800 49700 49701 37009 37010 2714 2715 25544 25545 38257 38258 48120 48121 16639 16640 49101 49102 13588 13589 15000 15001 46269 4627...
output:
4 4 3 1 3 4 4 4 4 3 3 4 4 1 3 3 4 3 1 4 3 4 3 3 1 3 3 4 3 4 4 4 3 4 3 4 3 3 4 3 4 4 4 1 3 4 4 4 4 3 3 4 4 4 3 4 3 3 3 4 4 4 3 3 4 4 4 4 3 4 3 1 4 3 3 4 1 4 4 3 3 3 4 3 4 4 1 4 4 4 4 4 3 4 4 4 3 3 4 4 3 3 4 1 4 1 3 4 4 4 3 4 4 1 4 4 1 4 3 4 3 4 4 3 4 3 3 4 3 4 3 4 3 3 4 4 4 3 4 4 4 3 4 3 4 4 1 3 1 3 ...
result:
ok 50000 lines
Test #11:
score: 0
Accepted
time: 100ms
memory: 14396kb
input:
50000 50000 8009 12254 22108 22277 5752 17047 4139 8705 1591 4046 29067 29462 14609 40048 465 23331 4440 14716 9607 9722 13461 30905 36645 38691 1569 25431 2752 4554 214 34538 36719 44914 21390 24345 29832 31704 21884 44025 23443 39152 7339 21353 11648 46289 1971 3851 13124 18924 24293 31487 14625 2...
output:
3 3 3 3 1 3 1 3 1 3 3 1 3 1 1 1 1 3 3 3 1 4 3 1 3 3 3 3 3 3 3 1 3 3 4 3 3 1 3 3 1 3 1 1 3 3 4 4 3 1 3 1 4 1 3 3 3 3 3 4 3 3 3 1 3 3 1 3 1 3 3 3 3 3 3 3 3 3 1 3 3 3 3 3 4 4 3 4 1 3 1 4 1 3 1 1 1 1 3 1 3 3 3 3 3 3 1 1 3 1 4 3 3 3 3 3 1 3 3 1 3 3 3 3 3 3 1 1 1 1 1 3 3 3 3 3 3 3 1 1 3 4 1 1 3 4 3 3 1 1 ...
result:
ok 50000 lines
Test #12:
score: 0
Accepted
time: 113ms
memory: 14444kb
input:
50000 50000 25911 28394 6660 10841 8387 28553 3683 10256 13802 22801 12147 23011 16188 43369 5992 27667 12961 16775 2715 9516 28953 35973 2983 8072 11231 11882 8072 21167 5834 13733 5340 25884 462 1070 959 27073 809 4568 1345 25432 4809 8997 6625 44504 11148 14179 6983 30617 5970 13330 36575 37652 2...
output:
3 3 4 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 3 4 4 1 3 3 4 4 3 4 3 3 3 3 4 3 3 1 4 3 3 3 3 4 3 3 1 3 1 1 3 3 4 3 4 3 3 3 4 1 3 3 3 3 3 1 3 1 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 1 3 3 3 4 4 3 3 1 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 4 1 4 4 3 3 3 4 1 4 3 3 3 ...
result:
ok 50000 lines
Test #13:
score: 0
Accepted
time: 100ms
memory: 14356kb
input:
50000 50000 42553 43740 18549 40701 3806 34236 10812 24567 1202 22133 944 18780 5622 8617 9734 23242 29968 32325 6567 9568 6845 17190 1949 7833 22214 23070 1384 15280 6170 6561 28119 31703 6100 48374 980 8110 8426 15001 3332 7523 8030 23908 974 5799 7318 11335 14037 15714 13671 20465 43715 47320 210...
output:
1 4 4 1 3 1 4 3 3 1 4 4 3 4 1 4 3 3 4 4 4 4 3 3 4 4 4 4 4 3 1 4 4 3 4 4 1 1 4 1 4 3 4 1 1 4 3 3 1 1 1 3 3 3 4 1 1 1 4 4 3 3 3 3 3 1 1 3 1 3 3 3 1 1 3 4 1 1 1 3 3 3 4 1 3 3 1 3 4 3 4 4 3 4 3 4 3 4 3 3 4 3 3 1 3 4 3 1 4 1 1 3 4 1 3 1 4 4 4 4 1 4 1 4 3 1 1 1 3 3 1 3 3 4 1 1 3 3 3 1 1 3 4 4 4 3 4 3 1 1 ...
result:
ok 50000 lines
Test #14:
score: 0
Accepted
time: 2ms
memory: 3468kb
input:
4 1 1 2 1 3 1 4 2 3 3 4 2 3
output:
3
result:
ok single line: '3'
Test #15:
score: 0
Accepted
time: 2ms
memory: 3580kb
input:
6 1 1 2 2 6 1 5 2 3 1 4 3 6 4 5 2 4
output:
2
result:
ok single line: '2'
Test #16:
score: 0
Accepted
time: 2ms
memory: 3468kb
input:
6 6 3 6 1 4 2 6 4 5 1 2 2 3 1 5 2 3 3 6 4 6 1 5 5 6 1 2
output:
2 2 4 2 4 1
result:
ok 6 lines
Test #17:
score: 0
Accepted
time: 0ms
memory: 3524kb
input:
7 1 1 3 3 4 1 2 3 5 6 7 2 6 4 5 2 7 2 5
output:
2
result:
ok single line: '2'
Test #18:
score: 0
Accepted
time: 2ms
memory: 3500kb
input:
17 8 1 2 2 3 3 4 4 5 1 6 6 7 7 8 8 9 1 10 10 11 11 12 12 13 1 14 14 15 15 16 16 17 5 9 13 17 1 5 2 6 3 7 4 8 5 9 1 8 1 16 2 11
output:
2 2 2 2 2 2 2 4
result:
ok 8 lines
Test #19:
score: 0
Accepted
time: 2ms
memory: 3556kb
input:
4 4 3 4 1 4 1 2 2 4 1 3 1 3 1 2 1 3 2 3
output:
3 3 3 4
result:
ok 4 lines
Test #20:
score: 0
Accepted
time: 0ms
memory: 3480kb
input:
5 5 2 4 2 5 1 2 1 4 1 5 2 3 3 4 4 5 2 5 3 4 3 4
output:
3 4 3 3 3
result:
ok 5 lines
Test #21:
score: 0
Accepted
time: 2ms
memory: 3448kb
input:
6 6 2 3 1 2 2 4 4 5 3 5 1 3 1 6 2 6 1 4 3 5 1 6 1 4 1 3
output:
3 4 3 1 4 3
result:
ok 6 lines
Test #22:
score: 0
Accepted
time: 2ms
memory: 3524kb
input:
7 7 2 5 1 6 4 7 5 6 1 2 1 3 2 4 3 5 2 3 2 4 1 2 2 7 3 5 1 7 2 7
output:
4 1 3 1 3 3 1
result:
ok 7 lines
Test #23:
score: 0
Accepted
time: 2ms
memory: 3464kb
input:
8 8 2 3 5 6 6 8 1 8 1 7 7 8 3 4 1 2 3 5 2 6 3 6 1 4 1 8 5 8 3 7 6 7 6 8
output:
3 3 3 3 3 4 4 3
result:
ok 8 lines
Test #24:
score: 0
Accepted
time: 2ms
memory: 3512kb
input:
9 9 2 8 4 5 5 6 2 7 1 2 4 6 4 9 1 5 2 4 2 3 4 7 5 7 3 5 3 4 6 7 2 5 4 9 1 2 3 6
output:
3 3 3 3 4 3 1 3 4
result:
ok 9 lines
Test #25:
score: 0
Accepted
time: 2ms
memory: 3484kb
input:
10 10 4 10 1 6 2 8 7 8 6 8 2 5 4 9 2 3 1 2 3 4 4 7 7 9 2 5 8 9 2 8 1 5 1 4 3 7 5 7 4 9 5 9
output:
3 1 3 3 3 4 3 3 1 3
result:
ok 10 lines
Test #26:
score: 0
Accepted
time: 2ms
memory: 3452kb
input:
11 11 1 2 2 3 9 10 3 6 7 11 2 5 3 9 1 4 2 6 3 5 4 7 2 8 9 10 8 11 6 8 2 9 3 11 4 5 3 9 8 9 9 10 3 11 2 4
output:
1 1 3 3 3 3 1 3 1 3 1
result:
ok 11 lines
Test #27:
score: 0
Accepted
time: 0ms
memory: 3516kb
input:
12 12 1 5 1 6 1 2 5 7 4 8 2 8 5 12 5 9 9 10 6 11 11 12 2 3 3 4 1 5 1 7 2 12 5 6 3 8 3 4 9 12 2 7 4 7 8 11 1 5 7 12
output:
2 2 2 2 2 2 2 2 4 4 2 2
result:
ok 12 lines
Test #28:
score: 0
Accepted
time: 1ms
memory: 3512kb
input:
13 13 4 5 5 11 1 3 2 4 4 10 2 10 7 9 1 6 1 2 1 4 6 8 4 7 8 12 7 13 2 8 2 9 3 13 2 11 3 9 2 3 7 9 2 6 10 13 2 7 11 12 2 8 7 13
output:
3 3 3 3 3 3 1 3 3 3 3 3 1
result:
ok 13 lines
Test #29:
score: 0
Accepted
time: 2ms
memory: 3520kb
input:
14 14 1 3 10 12 1 11 3 7 1 4 2 6 3 14 2 9 3 13 5 10 4 8 13 14 1 2 2 8 3 5 9 11 10 12 3 5 1 14 2 7 7 12 2 7 3 5 7 11 9 13 8 14 4 11 5 11 8 12
output:
2 1 1 2 2 1 2 1 1 4 4 2 1 2
result:
ok 14 lines
Test #30:
score: 0
Accepted
time: 2ms
memory: 3556kb
input:
15 15 5 6 10 15 8 10 6 7 2 3 9 14 1 2 9 12 1 5 3 10 2 8 3 4 1 9 6 13 1 14 7 11 2 14 6 11 9 12 5 10 11 15 8 9 4 14 4 10 6 13 4 6 1 8 3 8 8 14 2 11 9 13
output:
2 1 1 2 2 4 4 2 1 2 2 2 4 1 2
result:
ok 15 lines
Test #31:
score: 0
Accepted
time: 0ms
memory: 3476kb
input:
16 16 12 13 2 6 1 4 1 2 3 8 4 10 7 9 2 14 10 15 2 3 6 11 13 16 5 12 1 7 2 5 13 15 3 16 12 16 1 2 13 16 4 12 2 5 5 11 5 16 1 2 3 5 4 9 9 11 13 14 5 12 5 12 5 9 12 16
output:
4 3 3 4 3 3 4 3 4 3 3 3 3 3 4 4
result:
ok 16 lines
Test #32:
score: 0
Accepted
time: 2ms
memory: 3480kb
input:
17 17 4 9 3 14 2 4 2 8 3 10 9 11 3 7 1 3 1 2 4 13 4 5 10 17 2 3 6 12 6 16 5 6 1 10 3 15 4 16 3 6 1 14 3 14 12 15 8 12 2 14 6 13 1 8 14 17 9 17 4 15 12 14 1 6 7 16 10 12 9 17
output:
1 3 3 1 3 1 3 1 3 3 4 3 3 3 3 4 4
result:
ok 17 lines
Test #33:
score: 0
Accepted
time: 0ms
memory: 3460kb
input:
18 18 4 9 3 13 3 4 5 14 1 12 6 11 6 16 1 15 6 14 2 3 2 6 4 7 1 2 1 5 6 8 7 17 1 18 16 17 9 10 1 15 12 17 7 17 12 17 4 14 6 16 4 15 2 9 8 18 3 5 7 17 7 9 2 13 7 15 9 14 6 7 1 9 1 17
output:
1 4 3 4 4 3 4 3 3 4 3 3 3 4 4 3 4 4
result:
ok 18 lines
Test #34:
score: 0
Accepted
time: 2ms
memory: 3536kb
input:
19 19 2 7 6 9 11 19 4 10 8 17 3 6 3 5 8 11 2 18 5 13 1 3 10 13 9 15 12 17 6 16 3 4 4 8 1 2 12 14 6 12 5 11 10 14 4 19 1 3 1 9 3 15 7 19 3 9 4 5 14 18 3 8 11 14 1 4 3 12 1 5 5 16 4 17 14 18 1 17
output:
4 4 3 1 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3
result:
ok 19 lines
Test #35:
score: 0
Accepted
time: 2ms
memory: 3480kb
input:
20 20 3 8 6 12 1 5 7 14 18 20 13 20 1 2 8 11 8 12 10 17 8 15 1 4 4 7 11 19 2 3 2 9 5 10 12 18 8 13 5 16 4 6 9 20 8 9 5 16 1 18 6 16 6 8 10 13 1 10 1 9 1 12 19 20 2 17 3 20 4 11 2 12 7 14 3 20 18 20 1 5 2 13
output:
4 3 1 4 3 3 4 1 3 3 3 3 4 3 3 1 4 3 1 4
result:
ok 20 lines
Test #36:
score: 0
Accepted
time: 2ms
memory: 3488kb
input:
100 200 15 84 22 89 29 48 46 59 3 5 33 69 20 77 1 56 2 13 13 60 5 24 24 97 45 52 23 37 8 23 47 99 41 75 7 25 69 70 24 93 18 27 4 51 67 78 5 30 2 3 6 39 1 2 13 16 8 26 73 74 25 28 17 47 70 83 72 79 9 66 15 91 4 10 9 11 24 33 22 29 1 4 4 32 20 41 70 100 43 55 59 89 6 7 2 14 1 90 41 54 13 20 28 98 28 3...
output:
3 3 4 3 4 4 4 1 1 3 3 4 4 4 4 4 4 4 4 4 3 3 3 3 4 4 1 3 4 3 3 3 1 3 3 4 4 4 1 3 3 4 3 3 4 4 3 3 3 3 1 3 4 1 4 4 3 3 1 3 4 3 1 3 3 3 3 4 1 3 3 1 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 4 4 4 4 4 3 4 3 4 3 4 3 3 4 3 1 3 4 4 4 3 3 3 3 3 1 3 3 4 3 3 4 3 4 4 1 3 3 3 3 4 3 1 3 3 4 4 3 3 3 4 1 3 3 4 3 3 4 3 3 3 3 3 ...
result:
ok 200 lines
Test #37:
score: 0
Accepted
time: 2ms
memory: 3508kb
input:
200 100 22 24 21 187 7 13 64 141 7 86 5 55 21 63 162 193 2 28 91 157 109 127 78 152 3 159 12 150 1 4 135 161 39 68 107 198 35 48 118 149 61 147 62 184 18 74 30 80 3 7 113 139 84 179 18 75 7 31 77 129 126 195 53 70 19 37 6 49 22 92 79 117 12 83 54 96 45 58 11 61 18 131 125 197 91 177 157 169 28 56 35...
output:
3 3 3 3 3 3 1 4 3 3 3 3 4 3 3 1 4 3 3 3 1 4 1 1 1 3 3 3 3 3 3 3 3 1 3 4 3 3 3 3 3 4 3 4 4 1 3 3 3 1 3 1 1 1 3 3 3 1 1 3 3 1 1 4 3 1 1 1 1 3 4 4 3 1 3 1 1 3 3 4 4 3 3 4 3 4 1 3 3 3 3 1 1 3 3 3 1 1 3 3
result:
ok 100 lines