QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#426405 | #6329. Colorful Graph | zyz07 | AC ✓ | 494ms | 7192kb | C++17 | 8.5kb | 2024-05-31 10:13:31 | 2024-05-31 10:13:32 |
Judging History
answer
#include <bits/stdc++.h>
#include <vector>
namespace atcoder {
namespace internal {
template <class T> struct simple_queue {
std::vector<T> payload;
int pos = 0;
void reserve(int n) { payload.reserve(n); }
int size() const { return int(payload.size()) - pos; }
bool empty() const { return pos == int(payload.size()); }
void push(const T& t) { payload.push_back(t); }
T& front() { return payload[pos]; }
void clear() {
payload.clear();
pos = 0;
}
void pop() { pos++; }
};
} // namespace internal
} // namespace atcoder
#include <limits>
#include <cassert>
#include <numeric>
#include <type_traits>
namespace atcoder {
namespace internal {
#ifndef _MSC_VER
template <class T>
using is_signed_int128 =
typename std::conditional<std::is_same<T, __int128_t>::value ||
std::is_same<T, __int128>::value,
std::true_type,
std::false_type>::type;
template <class T>
using is_unsigned_int128 =
typename std::conditional<std::is_same<T, __uint128_t>::value ||
std::is_same<T, unsigned __int128>::value,
std::true_type,
std::false_type>::type;
template <class T>
using make_unsigned_int128 =
typename std::conditional<std::is_same<T, __int128_t>::value,
__uint128_t,
unsigned __int128>;
template <class T>
using is_integral = typename std::conditional<std::is_integral<T>::value ||
is_signed_int128<T>::value ||
is_unsigned_int128<T>::value,
std::true_type,
std::false_type>::type;
template <class T>
using is_signed_int = typename std::conditional<(is_integral<T>::value &&
std::is_signed<T>::value) ||
is_signed_int128<T>::value,
std::true_type,
std::false_type>::type;
template <class T>
using is_unsigned_int =
typename std::conditional<(is_integral<T>::value &&
std::is_unsigned<T>::value) ||
is_unsigned_int128<T>::value,
std::true_type,
std::false_type>::type;
template <class T>
using to_unsigned = typename std::conditional<
is_signed_int128<T>::value,
make_unsigned_int128<T>,
typename std::conditional<std::is_signed<T>::value,
std::make_unsigned<T>,
std::common_type<T>>::type>::type;
#else
template <class T> using is_integral = typename std::is_integral<T>;
template <class T>
using is_signed_int =
typename std::conditional<is_integral<T>::value && std::is_signed<T>::value,
std::true_type,
std::false_type>::type;
template <class T>
using is_unsigned_int =
typename std::conditional<is_integral<T>::value &&
std::is_unsigned<T>::value,
std::true_type,
std::false_type>::type;
template <class T>
using to_unsigned = typename std::conditional<is_signed_int<T>::value,
std::make_unsigned<T>,
std::common_type<T>>::type;
#endif
template <class T>
using is_signed_int_t = std::enable_if_t<is_signed_int<T>::value>;
template <class T>
using is_unsigned_int_t = std::enable_if_t<is_unsigned_int<T>::value>;
template <class T> using to_unsigned_t = typename to_unsigned<T>::type;
} // namespace internal
} // namespace atcoder
inline namespace templates {
namespace internal{
using namespace atcoder::internal;
}
}
#include <utility>
#include <vector>
inline namespace templates {
template <typename T, typename = internal::is_signed_int_t<T>>
struct MaxFlow {
static constexpr T Inf = std::numeric_limits<T>::max();
int n;
struct Edge {
int v;
T w;
};
std::vector<Edge> e;
std::vector<std::vector<int>> g;
MaxFlow(int _n) : n(_n), g(n) {}
std::pair<int, int> add_edge(int u, int v, T w) {
g[u].push_back(e.size());
e.push_back({v, w});
g[v].push_back(e.size());
e.push_back({u, 0});
return {int(e.size()) - 2, int(e.size()) - 1};
}
T flow(int s, int t) {
T res = 0;
while (bfs(s, t)) {
cur.assign(n + 1, 0);
T flow;
while ((flow = dinic(s, t, Inf)))
res += flow;
}
return res;
}
std::vector<std::tuple<int, int, T>> edges() const {
std::vector<std::tuple<int, int, T>> edge;
for (int i = 0; i < int(e.size()); i += 2) {
edge.emplace_back(e[i ^ 1].v, e[i].v, e[i].w);
}
return edge;
}
private:
std::vector<int> cur, dis;
bool bfs(int s, int t) {
dis.assign(n, 0);
internal::simple_queue<int> q;
q.reserve(n);
q.push(s);
dis[s] = 1;
while (q.size()) {
int u = q.front();
q.pop();
for (int i : g[u]) {
int v = e[i].v;
if (e[i].w && !dis[v]) {
dis[v] = dis[u] + 1;
q.push(v);
if (v == t)
return 1;
}
}
}
return 0;
}
T dinic(int u, int t, T flow) {
if (u == t)
return flow;
T rest = flow;
for (int i = cur[u]; i < int(g[u].size()) && rest; ++i) {
cur[u] = i;
int j = g[u][i], v = e[j].v;
if (e[j].w && dis[v] == dis[u] + 1) {
T k = dinic(v, t, std::min(rest, e[j].w));
if (!k)
dis[v] = 0;
e[j].w -= k, e[j ^ 1].w += k, rest -= k;
}
}
return flow - rest;
}
};
} // namespace templates
using namespace std;
#define For(Ti,Ta,Tb) for(auto Ti=(Ta);Ti<=(Tb);++Ti)
#define Dec(Ti,Ta,Tb) for(auto Ti=(Ta);Ti>=(Tb);--Ti)
#define debug(...) fprintf(stderr,__VA_ARGS__)
#define range(Tx) begin(Tx),end(Tx)
using ll=long long;
const int N=7005;
int n,m,tot,bel[N],ans[N];
vector<int> g[N],scc[N],g2[N];
vector<pair<int,int>> G[N*2];
struct{
int dfn[N],low[N],dfx,stk[N],top,vis[N];
void tarjan(int u){
low[u]=dfn[u]=++dfx;
stk[++top]=u;
vis[u]=1;
for(int v:g[u]){
if(!dfn[v]){
tarjan(v);
low[u]=min(low[u],low[v]);
}else if(vis[v]){
low[u]=min(low[u],dfn[v]);
}
}
if(dfn[u]==low[u]){
++tot;
for(int v=0;v!=u;){
v=stk[top--];
bel[v]=tot;
scc[tot].push_back(v);
vis[v]=0;
}
}
}
void operator()(){
For(u,1,n){
if(!dfn[u]){
tarjan(u);
}
}
}
}tarjan;
void color(int u,int c){
for(int v:scc[u]){
ans[v]=c;
}
for(int v:g2[u]){
if(!ans[scc[v][0]]){
color(v,c);
}
}
}
vector<pair<int,int>*> pth;
bool vis[N*2],used[N];
int flg;
void dfs(int u){
if(flg) return;
vis[u]=1;
if(u>tot&&!used[u-tot]){
used[u-tot]=1;
flg=u-tot;
for(auto ptr:pth){
--ptr->second;
}
return;
}
for(auto& x:G[u]){
auto [v,w]=x;
if(w&&!vis[v]){
vis[v]=1;
pth.push_back(&x);
dfs(v);
pth.pop_back();
}
}
}
int main(){
cin.tie(nullptr)->sync_with_stdio(false);
cin>>n>>m;
For(i,1,m){
int u,v;
cin>>u>>v;
g[u].push_back(v);
}
tarjan();
MaxFlow<int> f(tot*2+3);
int s=f.n-2,t=f.n-1;
For(u,1,tot){
f.add_edge(s,u,1);
f.add_edge(u+tot,t,1);
for(int v:scc[u]){
for(int x:g[v]){
if(bel[x]!=u){
f.add_edge(u,bel[x]+tot,1);
f.add_edge(u+tot,bel[x]+tot,f.Inf);
}
}
}
}
int expected=tot-f.flow(s,t);
cerr<<expected<<'\n';
vector<int> poi;
for(int i:f.g[s]){
auto [u,w]=f.e[i];
if(!w){
poi.push_back(u);
for(int i:f.g[u]){
int v=f.e[i].v;
if(v!=s){
G[u].emplace_back(v,f.e[i^1].w);
}
}
}
}
For(u,tot+1,tot*2){
for(int i:f.g[u]){
int v=f.e[i].v;
if(v<u&&v!=t){
G[u].emplace_back(v,f.e[i^1].w);
}else if(v==t){
used[u-tot]=f.e[i].w;
}
}
}
for(int s:poi){
flg=0;
fill(vis,vis+tot*2+1,0);
dfs(s);
assert(flg);
g2[s].push_back(flg);
g2[flg].push_back(s);
}
int cur=0;
For(u,1,tot){
if(!ans[scc[u][0]]){
color(u,++cur);
}
}
cerr<<cur<<'\n';
assert(cur==expected);
For(u,1,n){
cout<<ans[u]<<" \n"[u==n];
}
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 1ms
memory: 4476kb
input:
5 5 1 4 2 3 1 3 2 5 5 1
output:
1 2 2 1 1
result:
ok AC
Test #2:
score: 0
Accepted
time: 0ms
memory: 4468kb
input:
5 7 1 2 2 1 4 3 5 1 5 4 4 1 4 5
output:
1 1 2 1 1
result:
ok AC
Test #3:
score: 0
Accepted
time: 0ms
memory: 4684kb
input:
8 6 6 1 3 4 3 6 2 3 4 1 6 4
output:
1 1 1 1 2 1 3 4
result:
ok AC
Test #4:
score: 0
Accepted
time: 382ms
memory: 7020kb
input:
7000 6999 4365 4296 2980 3141 6820 4995 4781 24 2416 5844 2940 2675 3293 2163 3853 5356 262 6706 1985 1497 5241 3803 353 1624 5838 4708 5452 3019 2029 6161 3849 4219 1095 1453 4268 4567 1184 1857 2911 3977 1662 2751 6353 6496 2002 6628 1407 4623 425 1331 4445 4277 1259 3165 4994 1044 2756 5788 5496 ...
output:
1 107 414 203 2 3 2 377 655 1505 1 1 4 1 232 5 516 6 702 25 498 585 2 253 102 7 8 6 334 9 1171 566 10 11 385 385 286 12 2 13 1525 614 14 534 15 687 16 2 17 18 879 19 1292 2 122 187 1 20 1031 21 575 2 2 2 158 22 2 2 243 23 24 710 25 981 26 1179 6 570 932 2 2 2 427 443 1 451 610 751 603 2 309 6 27 306...
result:
ok AC
Test #5:
score: 0
Accepted
time: 494ms
memory: 6980kb
input:
7000 6999 4832 1603 5984 6985 5355 3687 6007 2170 5984 3486 3267 2189 538 2123 4343 4553 5855 6168 5984 257 4239 2304 5984 2063 3298 1869 5984 6353 5984 2018 5984 5387 5984 3382 3164 3978 2690 2816 4810 2638 5984 3773 5984 1634 5984 2786 5984 3671 5984 5140 2943 5721 5984 414 1105 4060 3093 796 5984...
output:
1 1 618 465 1723 1 886 671 1 1 1 1 1 1274 1 2 1 1 1 2330 3 1713 2095 1232 1 1 848 1896 782 1568 1664 1 1 1 4 5 1371 1 117 135 6 237 1187 7 1846 8 21 9 10 1573 18 1533 2303 204 1811 1 11 12 13 14 1 1 15 1 805 1558 1 617 1 2264 16 1 1 1 17 18 1 1 1607 1 1804 884 19 1891 1 1 670 1 20 1 416 1341 1 21 22...
result:
ok AC
Test #6:
score: 0
Accepted
time: 483ms
memory: 6812kb
input:
7000 6999 1649 5337 1701 3344 4394 2172 3330 39 5932 1141 5381 5340 5453 3300 125 2172 6810 5263 804 2172 6635 2172 676 4740 3015 1183 1710 5769 611 5915 3419 1581 2094 2172 4508 2172 6604 2433 6113 1466 1604 696 1518 1123 1287 2940 4825 2172 5130 4524 2693 2172 106 2172 5157 2172 3693 2172 5198 217...
output:
1 2 464 319 103 3 165 1084 1720 4 1148 5 6 902 632 529 7 385 1158 1690 701 8 9 1446 551 266 731 413 10 11 1792 12 1334 752 1410 13 411 421 94 14 237 2073 1741 15 385 1175 685 303 16 45 377 17 1672 1538 694 323 323 18 583 5 19 62 20 2183 1827 1894 221 813 21 22 23 24 25 1078 460 1211 26 956 1014 27 8...
result:
ok AC
Test #7:
score: 0
Accepted
time: 171ms
memory: 7136kb
input:
7000 6999 2896 6321 881 2623 5058 2623 4833 2623 4669 2623 4781 5007 1447 2623 4781 4768 4781 3834 2758 4792 797 5055 3784 2623 4781 5510 6606 3040 597 3459 4136 2037 1291 3989 4781 837 4781 4379 5637 2053 1642 2665 4781 4664 4781 952 4924 2511 4781 4201 4781 2352 4781 5362 3901 197 137 2623 2706 19...
output:
1 1 1 1 1 1 1 2 354 3 1 1 1 1 1 1443 1548 1 1 4 1345 1 795 607 1367 1504 1428 1007 5 6 1 7 1 1 1 1 1536 226 1 699 1 1 879 1 8 1 9 1 10 1 1 1 11 12 1 13 1 1 783 1 14 1 1 113 1 15 272 1499 1 1743 1 1 1 16 1 1 1 1 1 1 1 1017 1 17 1052 1145 18 1 1 1 19 1523 1510 20 1 1 1 1 21 22 23 1 1 476 24 1513 1 1 2...
result:
ok AC
Test #8:
score: 0
Accepted
time: 40ms
memory: 6724kb
input:
6999 6998 1269 3969 1269 2429 1269 2609 1269 2515 1269 6166 1269 6614 3108 1269 2105 1269 4670 1269 578 1269 4661 1269 1421 1269 2576 1269 6152 1269 1269 6636 3011 1269 305 1269 5189 1269 1683 1269 6861 1269 1269 5798 1499 1269 282 1269 914 1269 80 1269 677 1269 701 1269 1269 359 6521 1269 1269 1754...
output:
1 2 3 4 1073 5 6 2667 1045 3245 3304 2946 7 434 8 9 10 976 11 12 125 13 14 2692 15 16 17 18 19 1675 20 1067 21 22 3194 23 1614 459 24 515 971 25 26 1204 3088 27 28 29 30 31 2522 1552 3493 32 263 2395 33 34 35 36 37 577 20 38 3396 2833 3337 39 40 41 525 42 730 1745 2103 43 44 2792 45 46 2095 47 2380 ...
result:
ok AC
Test #9:
score: 0
Accepted
time: 2ms
memory: 5416kb
input:
7000 0
output:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 ...
result:
ok AC
Test #10:
score: 0
Accepted
time: 6ms
memory: 7192kb
input:
7000 6999 3138 1903 3285 5919 6182 1430 1164 961 1577 6445 1390 3384 935 5723 6614 6387 4799 2877 3915 5128 5366 5455 2287 3941 2053 2326 4022 6993 488 2922 4327 4701 4674 3221 1666 4773 4356 3232 3888 937 4318 6942 577 1299 4491 1938 5154 1254 790 5532 4286 5478 2918 6725 2853 304 2554 5207 5140 77...
output:
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...
result:
ok AC
Test #11:
score: 0
Accepted
time: 4ms
memory: 5744kb
input:
7000 6999 33 3147 5877 4807 3116 4168 1651 2456 624 1740 6440 3058 6414 489 1023 2523 706 93 5523 598 4211 6063 3570 6840 6566 2971 6614 1907 5893 4389 4022 2527 5096 2345 4682 2134 188 5597 695 4285 1344 3832 3534 879 6574 6252 3759 3444 2167 85 5630 6600 3158 4404 6389 689 4871 6719 4295 6008 3437...
output:
1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...
result:
ok AC
Test #12:
score: 0
Accepted
time: 0ms
memory: 5716kb
input:
7000 6999 1247 5150 3318 2013 5686 1615 6145 6521 5717 94 2787 3443 2648 4875 5332 5934 1897 1651 4640 2183 1750 6964 148 5228 745 2814 474 1165 496 6735 180 3412 2723 3374 6200 4361 497 5328 1928 5998 5648 1261 5090 4723 1715 706 2499 897 6569 6204 6039 2787 2882 5044 5767 4256 975 1877 1857 4453 6...
output:
1 1 1 1 1 1 2 1 2 1 2 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 3 1 1 1 1 1 1 2 1 2 1 1 1 2 1 1 1 1 1 1 1 1 4 1 1 1 1 1 2 2 1 1 2 1 1 1 1 1 1 2 2 1 2 2 1 1 1 1 1 5 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 2 1 1 1 1 1 2 1 1 1 1 2 1 1 2 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 6 1 1 1 1 2 1 1 1 2 2 2 ...
result:
ok AC
Test #13:
score: 0
Accepted
time: 5ms
memory: 6124kb
input:
7000 6999 2349 199 5295 2831 6143 2006 3212 3198 6956 3807 732 4838 5069 1027 5744 3479 6 5301 5687 4452 4201 1151 1353 4884 548 3506 6094 4799 4950 6939 5234 817 652 1314 979 6984 5771 1851 398 1322 2294 4298 847 3929 6833 183 2904 6745 4797 3874 94 315 4282 582 6591 5037 962 147 799 908 2593 5547 ...
output:
1 1 2 1 1 2 2 2 2 2 2 1 2 2 2 1 2 2 3 2 2 1 1 4 2 1 1 5 2 1 2 2 2 2 1 2 1 2 2 2 2 1 2 2 1 6 2 1 1 7 2 2 8 9 2 10 2 2 11 2 1 1 2 1 1 2 2 2 2 2 1 1 1 1 2 1 2 1 2 2 1 1 1 2 12 2 1 2 1 2 2 2 1 13 2 1 2 2 2 1 2 1 2 2 2 2 1 1 1 1 1 2 2 14 15 2 2 2 2 1 2 2 2 2 2 1 1 1 1 2 2 2 16 17 1 1 18 1 2 19 2 2 1 2 2 ...
result:
ok AC
Test #14:
score: 0
Accepted
time: 5ms
memory: 6500kb
input:
7000 6999 3409 1629 2076 6412 4997 1078 6320 626 4501 1104 4173 1774 5507 2375 2299 5115 4321 127 1192 6635 1909 3398 2972 499 862 5024 421 2931 861 1536 902 3813 659 4514 1843 3035 3669 1228 1724 1880 34 706 133 3468 6116 585 5073 1461 5667 3405 715 4834 6915 3007 1736 6108 3264 2870 2393 6474 2108...
output:
1 1 2 1 1 3 1 1 1 4 1 5 1 6 7 1 1 1 1 1 1 8 1 1 9 1 10 11 12 13 1 14 1 15 1 1 1 16 17 1 1 18 19 1 1 1 1 20 1 1 21 1 1 1 1 22 1 1 23 24 1 1 1 25 1 26 1 27 1 28 29 1 30 31 1 32 1 1 33 34 35 36 37 1 1 38 1 39 1 1 3 1 1 40 41 42 1 43 1 1 1 1 1 44 45 1 1 46 37 47 48 1 49 50 51 1 52 1 1 53 54 1 55 1 56 57...
result:
ok AC
Test #15:
score: 0
Accepted
time: 10ms
memory: 6600kb
input:
7000 7000 2048 5882 6801 2408 3225 2608 1441 5079 497 6253 557 5589 2535 6257 4800 2595 4713 1286 4759 6636 4303 4296 6195 2048 6994 2987 1249 3044 1036 10 6472 2076 1996 1086 1279 1486 6100 369 4797 3437 2493 4576 2944 5601 197 5582 5488 5035 4023 659 2651 5024 2257 5710 1001 3941 446 4815 687 702 ...
output:
1 2 3 12 13 14 20 27 28 29 30 32 33 45 46 72 77 185 186 34 187 188 189 191 192 193 205 212 213 214 257 265 267 270 201 272 275 280 281 282 283 284 285 244 286 288 289 290 99 291 293 278 90 295 298 277 299 22 301 304 308 249 309 310 312 313 243 109 317 318 324 290 307 327 328 300 329 157 339 354 355 ...
result:
ok AC
Test #16:
score: 0
Accepted
time: 9ms
memory: 6716kb
input:
6993 7000 6927 2941 6385 1428 6914 2553 2474 4268 2068 1640 2298 6960 6201 1806 4912 59 4407 5504 1595 6868 6378 2515 3713 3724 2995 2589 2314 2932 4042 431 6322 4178 5947 6850 6192 735 3802 1043 4982 1575 311 6496 5006 3191 6473 3084 2387 4706 6632 5901 5113 3066 5248 1274 5671 717 1311 4261 1960 3...
output:
1 2 237 21 240 242 157 243 52 249 250 251 130 255 275 139 287 289 290 185 291 297 298 299 286 300 306 307 308 309 310 16 315 172 96 318 199 319 321 322 326 338 339 340 294 189 188 341 342 345 355 356 367 373 374 294 377 221 165 378 207 379 380 243 381 383 387 179 389 359 207 49 390 391 430 434 437 4...
result:
ok AC
Test #17:
score: 0
Accepted
time: 8ms
memory: 6532kb
input:
6930 7000 3746 2945 3523 6758 4109 1106 2732 5415 2423 844 3702 6309 6503 5362 5997 6294 5688 1396 4842 1764 4780 4521 1254 826 37 4653 2138 2358 6345 1223 1385 2341 5261 5867 4815 2918 4209 696 4235 2314 3680 2919 5605 5155 6643 3391 2691 1418 6289 2093 1970 1804 828 5237 4025 1111 1164 5519 5889 2...
output:
1 2 41 50 53 54 305 324 325 326 206 327 328 186 281 334 337 338 122 339 340 341 346 347 348 350 351 352 360 362 313 364 368 369 370 371 372 374 375 358 376 108 250 378 379 380 381 382 42 383 384 389 115 390 391 413 309 417 241 427 432 433 434 219 436 437 291 285 444 450 456 457 458 264 459 460 461 4...
result:
ok AC
Test #18:
score: 0
Accepted
time: 11ms
memory: 6256kb
input:
6300 7000 5921 5466 723 5843 1084 3134 3865 5742 5492 2885 328 4408 6055 4074 3702 2240 1342 2353 295 734 553 48 4454 2980 1248 4460 5023 19 2784 441 105 844 6048 1773 4840 5260 3910 1292 5578 2864 4978 3116 6182 4962 2575 1661 5030 435 5861 4709 5033 358 1746 5816 5877 3921 2678 5679 1784 33 207 59...
output:
1 3 5 6 7 8 9 13 14 15 16 17 18 19 20 21 24 496 497 498 175 499 167 500 329 503 504 454 505 397 506 507 86 509 510 511 70 452 513 383 514 515 516 517 520 523 524 463 525 526 488 533 534 512 42 535 540 541 542 545 243 420 571 448 484 572 573 574 42 287 575 576 577 578 485 157 415 579 581 582 583 584 ...
result:
ok AC
Test #19:
score: 0
Accepted
time: 3ms
memory: 4988kb
input:
2800 7000 218 2670 1436 2268 38 2781 55 783 549 1627 660 1609 2268 2645 1376 1395 2747 71 785 1451 1096 2633 2655 2557 1569 307 16 56 1993 2751 1154 2760 478 2452 1841 2764 155 1781 215 1432 1788 2548 193 2665 167 1038 2425 2314 439 1615 269 1187 1222 245 1638 2016 2352 1511 2333 1564 1667 2576 1751...
output:
1 14 14 14 14 14 14 195 14 14 14 14 14 14 14 14 14 14 149 14 14 14 14 131 14 14 14 14 14 14 87 224 14 14 14 14 14 14 14 14 14 14 14 14 125 14 14 14 14 89 14 132 14 14 14 14 14 14 14 14 14 222 14 6 14 14 211 226 49 14 14 14 168 14 14 98 14 14 14 14 14 14 14 14 14 14 14 14 14 216 14 27 14 14 91 14 14 ...
result:
ok AC
Test #20:
score: 0
Accepted
time: 8ms
memory: 6600kb
input:
7000 7000 4828 3840 4148 2678 1645 2954 5516 1204 4664 285 904 1978 1434 1688 1902 5205 1324 4512 1722 1246 6724 5227 524 196 937 6286 6609 4724 5408 5610 4405 2463 5493 1567 2625 2894 2378 3685 5399 6872 6475 6546 5697 1265 1811 1314 2347 3005 6245 271 2414 434 3492 6948 4447 599 793 6107 464 5353 ...
output:
1 2 3 4 5 6 7 8 12 13 14 15 16 18 19 20 21 22 23 24 25 26 27 32 33 33 34 35 36 37 39 40 41 42 43 44 45 46 49 50 51 52 53 54 59 60 61 62 63 64 65 66 68 69 70 71 72 73 74 75 76 78 79 80 81 83 86 87 89 95 96 97 98 99 104 105 106 107 108 109 110 111 112 113 114 115 116 119 120 122 123 124 125 127 128 12...
result:
ok AC
Test #21:
score: 0
Accepted
time: 8ms
memory: 6660kb
input:
6993 7000 1576 5558 2853 3183 212 2572 1001 75 3386 6483 401 22 489 6768 6520 1684 6439 6188 3810 6414 4088 1924 371 1666 2822 410 5664 1676 1043 1365 384 2688 4179 6357 6466 4630 2829 4371 116 6817 1535 6172 751 5740 499 2484 2013 4576 6556 670 6177 3847 5344 4280 6103 1055 496 4934 6639 217 6606 4...
output:
1 3 7 11 12 13 15 16 19 20 22 24 25 26 27 28 29 30 33 34 35 36 37 38 43 44 45 46 48 49 53 54 55 56 57 59 60 61 62 63 64 65 66 51 67 68 69 73 75 76 77 8 79 1 81 82 84 85 86 88 89 92 98 99 100 101 102 103 104 106 107 108 109 111 113 115 116 117 118 121 124 125 126 130 133 134 136 137 138 139 140 142 1...
result:
ok AC
Test #22:
score: 0
Accepted
time: 4ms
memory: 6636kb
input:
6930 7000 2378 5636 2953 3870 897 2126 112 1756 3302 5114 4591 5593 5408 4899 1204 6313 6254 2214 5360 6680 2354 5865 5959 5969 1628 5317 6396 1006 2402 1767 1921 3373 3758 312 2167 5711 4119 6585 19 3951 1714 1206 3754 4376 4516 307 6312 165 5721 2470 4828 4842 4520 4310 1922 4946 2006 3856 1218 58...
output:
1 2 3 4 5 6 7 9 10 11 12 13 14 15 18 19 22 25 26 31 32 33 34 38 40 42 43 44 45 48 52 53 54 55 63 65 66 67 68 69 70 72 74 75 76 77 79 27 88 89 90 91 92 93 95 96 97 98 99 100 101 102 103 104 105 106 109 110 112 117 122 123 124 125 126 127 128 129 130 131 132 133 135 136 81 142 144 148 149 150 151 153 ...
result:
ok AC
Test #23:
score: 0
Accepted
time: 6ms
memory: 6292kb
input:
6300 7000 1562 45 1716 2699 5291 4828 5063 4588 5888 4130 5901 6109 1476 921 3390 5892 5425 3782 824 5679 2278 6102 6146 5556 4874 2115 2842 2803 1963 5131 3736 2611 320 5272 758 5667 4087 228 5139 760 1812 2968 2897 6117 277 387 336 1322 4319 4597 608 4481 6182 3050 4333 3570 401 1662 3085 3197 537...
output:
1 3 5 6 7 8 9 10 12 13 14 15 19 24 25 27 28 29 30 31 32 33 34 38 39 40 41 42 45 46 47 50 52 54 59 60 62 63 65 66 67 72 73 75 76 80 82 86 87 88 89 93 94 100 101 102 103 104 105 106 107 109 112 114 117 118 120 122 124 129 130 137 138 141 146 147 101 150 152 154 156 157 164 166 171 172 159 173 174 175 ...
result:
ok AC
Test #24:
score: 0
Accepted
time: 5ms
memory: 5516kb
input:
2800 7000 931 1154 1783 1159 2515 1596 1734 1277 825 430 938 208 288 684 970 2075 618 2411 2690 500 223 2162 2093 2765 172 1029 832 1571 89 2333 2301 981 1354 1094 1989 137 2340 1804 2600 1249 1714 2343 1043 2738 1375 1239 804 2578 424 1572 568 1945 2233 297 1890 519 1475 944 2732 1123 2012 927 2232...
output:
1 3 15 19 24 31 47 60 78 80 87 89 90 91 96 98 99 105 112 113 114 119 124 126 160 183 188 189 39 168 190 191 53 183 206 247 129 251 253 263 265 266 23 267 268 112 269 42 133 292 293 294 266 295 161 297 40 5 301 305 308 312 213 287 315 21 9 321 323 265 45 330 121 334 142 351 352 354 355 356 255 358 13...
result:
ok AC
Test #25:
score: 0
Accepted
time: 1ms
memory: 4432kb
input:
52 41 18 31 2 5 22 32 1 50 50 29 9 32 44 27 45 17 26 24 18 30 28 25 38 28 5 47 49 38 23 50 8 3 16 24 29 46 7 52 30 38 33 32 39 32 3 18 50 44 1 35 49 37 18 24 29 6 20 39 40 45 33 28 51 52 26 40 38 43 52 45 39 40 42 34 6 45 32 19 20 52 34 28
output:
1 5 6 10 5 2 11 6 12 13 14 15 16 17 18 9 2 6 12 19 20 21 3 9 7 22 3 7 1 8 6 12 7 23 4 24 25 8 19 19 26 23 8 3 2 1 5 27 25 1 28 11
result:
ok AC
Test #26:
score: 0
Accepted
time: 1ms
memory: 4560kb
input:
291 56 117 283 21 277 128 22 245 45 8 223 150 129 16 15 224 163 288 76 218 238 25 233 100 262 244 101 76 207 286 80 164 238 165 283 133 251 23 235 22 280 65 205 8 30 66 76 232 90 251 287 80 62 58 218 285 225 247 199 149 34 219 16 286 221 174 248 20 58 169 69 229 119 178 216 152 147 148 189 116 207 7...
output:
1 2 3 4 5 6 7 8 10 11 12 13 14 15 16 16 17 18 19 20 21 22 23 24 25 26 27 28 29 9 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 2 49 50 51 52 53 54 55 20 56 57 58 59 60 61 62 63 64 65 66 67 68 69 71 72 73 63 74 75 76 59 77 78 79 80 81 82 21 83 84 85 86 87 88 89 90 91 69 92 93 94 95 96 97 3...
result:
ok AC
Test #27:
score: 0
Accepted
time: 1ms
memory: 4420kb
input:
26 295 19 5 19 13 10 2 14 13 19 24 20 13 9 3 18 11 13 25 13 14 24 6 1 2 25 6 6 13 7 25 1 9 2 8 6 8 13 18 2 7 11 9 14 12 21 19 17 23 8 14 3 5 22 8 8 3 25 5 24 21 10 3 23 13 24 20 3 21 23 18 7 15 24 18 18 21 18 4 8 12 13 9 12 1 14 9 18 20 9 22 10 25 3 26 2 14 5 20 1 24 24 1 23 6 18 6 21 11 19 4 24 25 ...
output:
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
result:
ok AC
Test #28:
score: 0
Accepted
time: 1ms
memory: 4468kb
input:
63 1000 22 9 25 11 52 54 34 30 18 8 24 3 42 30 61 51 34 17 36 52 58 9 41 53 19 12 40 3 54 47 23 51 44 59 10 21 35 52 34 56 43 15 39 41 12 37 13 21 55 48 16 57 39 25 26 25 22 57 54 34 63 55 11 27 60 40 41 1 24 59 20 53 14 6 51 35 44 9 47 35 32 39 40 28 9 49 29 27 16 25 56 53 28 56 5 39 35 57 61 37 22...
output:
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
result:
ok AC
Test #29:
score: 0
Accepted
time: 1ms
memory: 4464kb
input:
42 113 29 15 21 15 28 13 30 42 7 33 4 31 16 18 11 36 38 13 33 6 28 27 17 19 21 25 42 4 19 16 8 37 38 4 4 19 20 22 33 27 26 42 31 39 14 29 6 32 20 12 40 6 32 28 23 18 41 22 10 4 7 28 31 13 14 24 37 40 9 20 26 32 13 18 35 29 9 29 34 26 19 32 20 25 34 39 33 23 28 35 35 22 7 16 40 13 39 24 24 20 18 24 4...
output:
1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1
result:
ok AC
Test #30:
score: 0
Accepted
time: 1ms
memory: 4412kb
input:
6 8 5 1 1 5 6 5 4 1 4 3 2 4 5 3 3 4
output:
1 1 1 1 1 2
result:
ok AC
Test #31:
score: 0
Accepted
time: 40ms
memory: 6616kb
input:
7000 6999 6253 1991 6253 4600 1137 6253 1764 6253 6253 908 6253 2205 6253 213 6253 4399 6300 6253 4601 6253 6253 4884 6937 6253 6253 4070 2646 6253 1007 6253 6552 6253 6253 2115 6253 922 6223 6253 6253 2496 3522 6253 2050 6253 6253 763 6803 6253 6253 3847 2816 6253 6253 6297 6253 471 6253 3211 3203 ...
output:
1 2 2451 3258 3 1798 4 80 1762 5 6 2923 1320 3181 7 360 8 9 2861 10 11 142 3161 12 13 2231 14 1069 57 2578 1152 1030 15 16 17 2398 18 404 347 569 886 19 2139 20 869 21 720 22 23 24 687 2419 25 26 27 131 1344 2177 1149 2003 28 606 930 29 2268 30 31 3285 479 32 912 33 34 995 2810 35 1668 36 37 38 39 4...
result:
ok AC