QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#595401 | #9427. Collect the Coins | ucup-team087# | AC ✓ | 240ms | 18876kb | C++20 | 16.8kb | 2024-09-28 13:37:59 | 2024-11-06 15:56:56 |
Judging History
answer
#ifndef LOCAL
#pragma GCC optimize ("Ofast")
#pragma GCC optimize ("unroll-loops")
#endif
#include <bits/stdc++.h>
using namespace std;
using ll=long long;
#define int ll
bool dbg=false;
#define rng(i,a,b) for(int i=int(a);i<int(b);i++)
#define rep(i,b) rng(i,0,b)
#define gnr(i,a,b) for(int i=int(b)-1;i>=int(a);i--)
#define per(i,b) gnr(i,0,b)
#define pb push_back
#define eb emplace_back
#define a first
#define b second
#define bg begin()
#define ed end()
#define all(x) x.bg,x.ed
#define si(x) int(x.size())
#ifdef LOCAL
#define dmp(x) cerr<<__LINE__<<" "<<#x<<" "<<x<<endl
#else
#define dmp(x) void(0)
#endif
template<class t,class u> bool chmax(t&a,u b){if(a<b){a=b;return true;}else return false;}
template<class t,class u> bool chmin(t&a,u b){if(b<a){a=b;return true;}else return false;}
template<class t> using vc=vector<t>;
template<class t> using vvc=vc<vc<t>>;
using pi=pair<int,int>;
using vi=vc<int>;
using vvi=vc<vc<int>>;
template<class t,class u>
ostream& operator<<(ostream& os,const pair<t,u>& p){
return os<<"{"<<p.a<<","<<p.b<<"}";
}
template<class t> ostream& operator<<(ostream& os,const vc<t>& v){
os<<"{";
for(auto e:v)os<<e<<",";
return os<<"}";
}
#define mp make_pair
#define mt make_tuple
#define one(x) memset(x,-1,sizeof(x))
#define zero(x) memset(x,0,sizeof(x))
#ifdef LOCAL
void dmpr(ostream&os){os<<endl;}
template<class T,class... Args>
void dmpr(ostream&os,const T&t,const Args&... args){
os<<t<<" ";
dmpr(os,args...);
}
#define dmp2(...) dmpr(cerr,__LINE__,##__VA_ARGS__)
#else
#define dmp2(...) void(0)
#endif
using uint=unsigned;
using ull=unsigned long long;
template<class t,size_t n>
ostream& operator<<(ostream&os,const array<t,n>&a){
return os<<vc<t>(all(a));
}
ll rand_int(ll l, ll r) { //[l, r]
//#ifdef LOCAL
static mt19937_64 gen;
/*#else
static mt19937_64 gen(chrono::steady_clock::now().time_since_epoch().count());
#endif*/
return uniform_int_distribution<ll>(l, r)(gen);
}
ll rand_int(ll k){ //[0,k)
return rand_int(0,k-1);
}
string rand_string(int n,char lw,char up){
string s(n,'?');
rep(i,n)s[i]=rand_int(lw,up);
return s;
}
int current_run_id,run_batch_size=1000;
int calc_random_limit(){
return current_run_id/run_batch_size+1;
}
template<class t>
void generate_single(t&a){
a=rand_int(1,calc_random_limit());
}
void generate_single(string&a){
int n;generate_single(n);
a=rand_string(n,'a','b');
}
template<class t,class u>
void generate_single(pair<t,u>&a){
generate_single(a.a);
generate_single(a.b);
}
//https://trap.jp/post/1224/
template<class... Args>
void input(Args&... a){
if(dbg){
(generate_single(a),...);
}else{
(cin >> ... >> a);
}
}
#define INT(...) int __VA_ARGS__;input(__VA_ARGS__)
#define LL(...) ll __VA_ARGS__;input(__VA_ARGS__)
#define ULL(...) ull __VA_ARGS__;input(__VA_ARGS__)
#define STR(...) string __VA_ARGS__;input(__VA_ARGS__)
#define CHR(...) char __VA_ARGS__;input(__VA_ARGS__)
#define DBL(...) double __VA_ARGS__;input(__VA_ARGS__)
#define LD(...) ld __VA_ARGS__;input(__VA_ARGS__)
#define overload3(a,b,c,d,...) d
#define VI2(name,size) vi name(size);rep(i_##name,size)input(name[i_##name]);
#define VI3(name,size,offset) vi name(size);rep(i_##name,size)input(name[i_##name]),name[i_##name]+=offset;
#define VI(...) overload3(__VA_ARGS__,VI3,VI2)(__VA_ARGS__)
#define VPI(name,size) vc<pi> name(size);rep(i_##name,size)input(name[i_##name]);
#define VVI(name,sizeN,sizeM) vvi name(sizeN,vi(sizeM));\
rep(i_##name,sizeN)rep(j_##name,sizeM)input(name[i_##name][j_##name]);
#define VS(name,size) vc<string> name(size);rep(i_##name,size)input(name[i_##name]);
#define overload5(a,b,c,d,e,f,...) f
#define VVC4(type,name,sizeN,sizeM) vvc<type> name(sizeN,vc<type>(sizeM));
#define VVC5(type,name,sizeN,sizeM,ini) vvc<type> name(sizeN,vc<type>(sizeM,ini));
#define VVC(...) overload5(__VA_ARGS__,VVC5,VVC4)(__VA_ARGS__)
template<class T>
T vvvc(T v){
return v;
}
template<class T,class...Args>
auto vvvc(int n,T v,Args...args){
return vector(n,vvvc(v,args...));
}
template<int i,class T>
void print_tuple(ostream&,const T&){
}
template<int i,class T,class H,class ...Args>
void print_tuple(ostream&os,const T&t){
if(i)os<<",";
os<<get<i>(t);
print_tuple<i+1,T,Args...>(os,t);
}
template<class ...Args>
ostream& operator<<(ostream&os,const tuple<Args...>&t){
os<<"{";
print_tuple<0,tuple<Args...>,Args...>(os,t);
return os<<"}";
}
void printsuc(int suc){
if(suc==1){
if(dbg)cout<<endl;
else{
#ifdef LOCAL
cout<<endl;
#else
cout<<"\n";
#endif
}
}
if(suc==2)
cout<<" ";
}
template<class t>
void print_single(t x,int suc=1){
cout<<x;
printsuc(suc);
}
template<class t,class u>
void print_single(const pair<t,u>&p,int suc=1){
print_single(p.a,2);
print_single(p.b,suc);
}
template<class T>
void print_single(const vector<T>&v,int suc=1){
rep(i,v.size())
print_single(v[i],i==int(v.size())-1?3:2);
printsuc(suc);
}
template<class T,size_t N>
void print_single(const array<T,N>&v,int suc=1){
rep(i,N)
print_single(v[i],i==int(N)-1?3:2);
printsuc(suc);
}
template<class T>
void print(const T&t){
print_single(t);
}
template<class T,class ...Args>
void print(const T&t,const Args&...args){
print_single(t,2);
print(args...);
}
template<class T>
void printvv(const vvc<T>&vs){
for(const auto&row:vs)print(row);
}
string readString(){
string s;
cin>>s;
return s;
}
template<class T>
T sq(const T& t){
return t*t;
}
void YES(bool ex=true){
cout<<"YES\n";
if(ex)exit(0);
#ifdef LOCAL
cout.flush();
#endif
}
void NO(bool ex=true){
cout<<"NO\n";
if(ex)exit(0);
#ifdef LOCAL
cout.flush();
#endif
}
void Yes(bool ex=true){
cout<<"Yes\n";
if(ex)exit(0);
#ifdef LOCAL
cout.flush();
#endif
}
void No(bool ex=true){
cout<<"No\n";
if(ex)exit(0);
#ifdef LOCAL
cout.flush();
#endif
}
//#define CAPITAL
/*
void yes(bool ex=true){
#ifdef CAPITAL
cout<<"YES"<<"\n";
#else
cout<<"Yes"<<"\n";
#endif
if(ex)exit(0);
#ifdef LOCAL
cout.flush();
#endif
}
void no(bool ex=true){
#ifdef CAPITAL
cout<<"NO"<<"\n";
#else
cout<<"No"<<"\n";
#endif
if(ex)exit(0);
#ifdef LOCAL
cout.flush();
#endif
}*/
void possible(bool ex=true){
#ifdef CAPITAL
cout<<"POSSIBLE"<<"\n";
#else
cout<<"Possible"<<"\n";
#endif
if(ex)exit(0);
#ifdef LOCAL
cout.flush();
#endif
}
void impossible(bool ex=true){
#ifdef CAPITAL
cout<<"IMPOSSIBLE"<<"\n";
#else
cout<<"Impossible"<<"\n";
#endif
if(ex)exit(0);
#ifdef LOCAL
cout.flush();
#endif
}
constexpr ll ten(int n){
return n==0?1:ten(n-1)*10;
}
const ll infLL=LLONG_MAX/3;
#ifdef int
const int inf=infLL;
#else
const int inf=INT_MAX/2-100;
#endif
int topbit(signed t){
return t==0?-1:31-__builtin_clz(t);
}
int topbit(ll t){
return t==0?-1:63-__builtin_clzll(t);
}
int topbit(ull t){
return t==0?-1:63-__builtin_clzll(t);
}
int botbit(signed a){
return a==0?32:__builtin_ctz(a);
}
int botbit(ll a){
return a==0?64:__builtin_ctzll(a);
}
int botbit(ull a){
return a==0?64:__builtin_ctzll(a);
}
int popcount(signed t){
return __builtin_popcount(t);
}
int popcount(ll t){
return __builtin_popcountll(t);
}
int popcount(ull t){
return __builtin_popcountll(t);
}
int bitparity(ll t){
return __builtin_parityll(t);
}
bool ispow2(int i){
return i&&(i&-i)==i;
}
ll mask(int i){
return (ll(1)<<i)-1;
}
ull umask(int i){
return (ull(1)<<i)-1;
}
ll minp2(ll n){
if(n<=1)return 1;
else return ll(1)<<(topbit(n-1)+1);
}
bool inc(int a,int b,int c){
return a<=b&&b<=c;
}
template<class S> void mkuni(S&v){
sort(all(v));
v.erase(unique(all(v)),v.ed);
}
template<class t> bool isuni(vc<t> v){
int s=si(v);
mkuni(v);
return si(v)==s;
}
template<class t>
void myshuffle(vc<t>&a){
rep(i,si(a))swap(a[i],a[rand_int(0,i)]);
}
template<class S,class u>
int lwb(const S&v,const u&a){
return lower_bound(all(v),a)-v.bg;
}
template<class t,class u>
bool bis(const vc<t>&v,const u&a){
return binary_search(all(v),a);
}
//VERIFY: yosupo
//KUPC2017J
//AOJDSL1A
//without rank
struct unionfind{
vi p,s;
int c;
unionfind(int n):p(n,-1),s(n,1),c(n){}
void clear(){
fill(all(p),-1);
fill(all(s),1);
c=si(p);
}
int find(int a){
return p[a]==-1?a:(p[a]=find(p[a]));
}
//set b to a child of a
bool unite(int a,int b){
a=find(a);
b=find(b);
if(a==b)return false;
p[b]=a;
s[a]+=s[b];
c--;
return true;
}
bool same(int a,int b){
return find(a)==find(b);
}
int sz(int a){
return s[find(a)];
}
};
vvc<int> readGraph(int n,int m){
vvc<int> g(n);
rep(i,m){
int a,b;
cin>>a>>b;
//sc.read(a,b);
a--;b--;
g[a].pb(b);
g[b].pb(a);
}
return g;
}
vvc<int> rand_tree(int n){
vvc<int> t(n);
unionfind uf(n);
while(uf.c>1){
int a=rand_int(n);
int b=rand_int(n);
if(uf.unite(a,b)){
t[a].pb(b);
t[b].pb(a);
}
}
return t;
}
vvc<int> readTree(int n){
if(dbg){
return rand_tree(n);
}else{
return readGraph(n,n-1);
}
}
vi readRooted(int n){
assert(!dbg);
vi par(n,-1);
rng(i,1,n){
input(par[i]);
par[i]--;
assert(inc(0,par[i],i-1));
}
return par;
}
void printTree(const vvc<int> t){
int n=si(t);
int degsum=0;
rep(i,n)degsum+=si(t[i]);
if(degsum==n-1){
//directed
rep(i,si(t))for(auto j:t[i]){
print(i+1,j+1);
}
}else if(degsum==2*(n-1)){
//undirected
rep(i,si(t))for(auto j:t[i])if(i<j){
print(i+1,j+1);
}
}else{
assert(false);
}
}
template<class t>
vc<t> presum(const vc<t>&a){
vc<t> s(si(a)+1);
rep(i,si(a))s[i+1]=s[i]+a[i];
return s;
}
vc<ll> presum(const vi&a){
vc<ll> s(si(a)+1);
rep(i,si(a))s[i+1]=s[i]+a[i];
return s;
}
//BIT で数列を管理するときに使う (CF850C)
template<class t>
vc<t> predif(vc<t> a){
gnr(i,1,si(a))a[i]-=a[i-1];
return a;
}
template<class t>
vvc<ll> imos(const vvc<t>&a){
int n=si(a),m=si(a[0]);
vvc<ll> b(n+1,vc<ll>(m+1));
rep(i,n)rep(j,m)
b[i+1][j+1]=b[i+1][j]+b[i][j+1]-b[i][j]+a[i][j];
return b;
}
//verify してないや
void transvvc(int&n,int&m){
swap(n,m);
}
template<class t,class... Args>
void transvvc(int&n,int&m,vvc<t>&a,Args&...args){
assert(si(a)==n);
vvc<t> b(m,vi(n));
rep(i,n){
assert(si(a[i])==m);
rep(j,m)b[j][i]=a[i][j];
}
a.swap(b);
transvvc(n,m,args...);
}
//CF854E
void rotvvc(int&n,int&m){
swap(n,m);
}
template<class t,class... Args>
void rotvvc(int&n,int&m,vvc<t>&a,Args&...args){
assert(si(a)==n);
vvc<t> b(m,vi(n));
rep(i,n){
assert(si(a[i])==m);
rep(j,m)b[m-1-j][i]=a[i][j];
}
a.swap(b);
rotvvc(n,m,args...);
}
//ソートして i 番目が idx[i]
//CF850C
template<class t>
vi sortidx(const vc<t>&a){
int n=si(a);
vi idx(n);iota(all(idx),0);
sort(all(idx),[&](int i,int j){return a[i]<a[j];});
return idx;
}
//vs[i]=a[idx[i]]
//例えば sortidx で得た idx を使えば単にソート列になって返ってくる
//CF850C
template<class t>
vc<t> a_idx(const vc<t>&a,const vi&idx){
int n=si(a);
assert(si(idx)==n);
vc<t> vs(n);
rep(i,n)vs[i]=a[idx[i]];
return vs;
}
//CF850C
vi invperm(const vi&p){
int n=si(p);
vi q(n);
rep(i,n)q[p[i]]=i;
return q;
}
template<class t,class s=t>
s SUM(const vc<t>&a){
return accumulate(all(a),s(0));
}
template<class t,size_t K,class s=t>
s SUM(const array<t,K>&a){
return accumulate(all(a),s(0));
}
template<class t>
t MAX(const vc<t>&a){
return *max_element(all(a));
}
template<class t>
pair<t,int> MAXi(const vc<t>&a){
auto itr=max_element(all(a));
return mp(*itr,itr-a.bg);
}
template<class A>
auto MIN(const A&a){
return *min_element(all(a));
}
template<class t>
pair<t,int> MINi(const vc<t>&a){
auto itr=min_element(all(a));
return mp(*itr,itr-a.bg);
}
vi vid(int n){
vi res(n);iota(all(res),0);
return res;
}
template<class S>
void soin(S&s){
sort(all(s));
}
template<class S,class F>
void soin(S&s,F&&f){
sort(all(s),forward<F>(f));
}
template<class S>
S soout(S s){
soin(s);
return s;
}
template<class S>
void rein(S&s){
reverse(all(s));
}
template<class S>
S reout(S s){
rein(s);
return s;
}
template<class t,class u>
pair<t,u>&operator+=(pair<t,u>&a,pair<t,u> b){
a.a+=b.a;a.b+=b.b;return a;}
template<class t,class u>
pair<t,u>&operator-=(pair<t,u>&a,pair<t,u> b){
a.a-=b.a;a.b-=b.b;return a;}
template<class t,class u>
pair<t,u> operator+(pair<t,u> a,pair<t,u> b){return mp(a.a+b.a,a.b+b.b);}
template<class t,class u>
pair<t,u> operator-(pair<t,u> a,pair<t,u> b){return mp(a.a-b.a,a.b-b.b);}
template<class t,class u,class v>
pair<t,u>&operator*=(pair<t,u>&a,v b){
a.a*=b;a.b*=b;return a;}
template<class t,class u,class v>
pair<t,u> operator*(pair<t,u> a,v b){return a*=b;}
template<class t,class u>
pair<t,u> operator-(pair<t,u> a){return mp(-a.a,-a.b);}
namespace std{
template<class t,class u>
istream&operator>>(istream&is,pair<t,u>&a){
return is>>a.a>>a.b;
}
}
template<class t>
t gpp(vc<t>&vs){
assert(si(vs));
t res=move(vs.back());
vs.pop_back();
return res;
}
template<class t,class u>
void pb(vc<t>&a,const vc<u>&b){
a.insert(a.ed,all(b));
}
template<class t,class...Args>
vc<t> cat(vc<t> a,Args&&...b){
(pb(a,forward<Args>(b)),...);
return a;
}
template<class t,class u>
vc<t>& operator+=(vc<t>&a,u x){
for(auto&v:a)v+=x;
return a;
}
template<class t,class u>
vc<t> operator+(vc<t> a,u x){
return a+=x;
}
template<class t>
vc<t>& operator+=(vc<t>&a,const vc<t>&b){
a.resize(max(si(a),si(b)));
rep(i,si(b))a[i]+=b[i];
return a;
}
template<class t>
vc<t> operator+(const vc<t>&a,const vc<t>&b){
vc<t> c(max(si(a),si(b)));
rep(i,si(a))c[i]+=a[i];
rep(i,si(b))c[i]+=b[i];
return c;
}
template<class t,class u>
vc<t>& operator-=(vc<t>&a,u x){
for(auto&v:a)v-=x;
return a;
}
template<class t,class u>
vc<t> operator-(vc<t> a,u x){
return a-=x;
}
template<class t,class u>
vc<t>& operator*=(vc<t>&a,u x){
for(auto&v:a)v*=x;
return a;
}
template<class t,class u>
vc<t> operator*(vc<t> a,u x){
return a*=x;
}
template<class t,class u>
vc<t>& operator/=(vc<t>&a,u x){
for(auto&v:a)v/=x;
return a;
}
template<class t,class u>
vc<t> operator/(vc<t> a,u x){
return a/=x;
}
template<class t>
vc<t>& operator<<=(vc<t>&a,int k){
assert(k>=0);
a.insert(a.bg,k,t(0));
return a;
}
template<class t>
vc<t> operator<<(vc<t> a,int k){
return a<<=k;
}
template<class t>
vc<t>& operator>>=(vc<t>&a,int k){
if(si(a)<=k)a.clear();
else a.erase(a.bg,a.bg+k);
return a;
}
template<class t>
vc<t> operator>>(vc<t> a,int k){
return a>>=k;
}
template<class t,class u>
void remval(vc<t>&a,const u&v){
a.erase(remove(all(a),v),a.ed);
}
//消した要素の個数を返してくれる
//UCUP 2-8-F
template<class t,class F>
int remif(vc<t>&a,F f){
auto itr=remove_if(all(a),f);
int res=a.ed-itr;
a.erase(itr,a.ed);
return res;
}
template<class t>
void rempos(vc<t>&a,int i){
assert(inc(0,i,si(a)-1));
a.erase(a.bg+i);
}
template<class VS,class u>
void fila(VS&vs,const u&a){
fill(all(vs),a);
}
template<class t,class u>
int findid(const vc<t>&vs,const u&a){
auto itr=find(all(vs),a);
if(itr==vs.ed)return -1;
else return itr-vs.bg;
}
template<class t>
void rtt(vc<t>&vs,int i){
rotate(vs.bg,vs.bg+i,vs.ed);
}
//Multiuni2023-8 C
//f(lw)=false,...,f(n-1)=false,f(n)=true,...,f(up)=true,
//のときに n を返す
template<class F>
int find_min_true(int lw,int up,F f){
while(up-lw>1){
const int mid=(lw+up)/2;
if(f(mid))up=mid;
else lw=mid;
}
return up;
}
//f(lw)=true,f(up)=false
template<class F>
int find_max_true(int lw,int up,F f){
while(up-lw>1){
const int mid=(lw+up)/2;
if(f(mid))lw=mid;
else up=mid;
}
return lw;
}
template<class t> using pqmin=priority_queue<t,vc<t>,greater<t>>;
template<class t> using pqmax=priority_queue<t>;
using T=tuple<int,int,int>;
void slv(){
INT(n);
VPI(tc,n);
soin(tc);
const int V=ten(9)+7;
int ans=find_min_true(-1,V,[&](int v){
pi x(0,ten(9)),y(0,ten(9));
int pre=0;
for(auto [t,c]:tc){
{
int dif=t-pre;
x.a-=dif*v;
x.b+=dif*v;
y.a-=dif*v;
y.b+=dif*v;
}
int l=inf,r=-inf;
rep(_,2){
if(inc(x.a,c,x.b)){
chmin(l,y.a);
chmax(r,y.b);
}
swap(x,y);
}
if(l>r)return false;
x=pi(c,c);
y=pi(l,r);
pre=t;
}
return true;
});
if(ans==V)ans=-1;
print(ans);
}
signed main(signed argc,char*argv[]){
if(argc>1&&strcmp(argv[1],"D")==0)dbg=true;
cin.tie(0);
ios::sync_with_stdio(0);
cout<<fixed<<setprecision(20);
if(dbg){
while(1){
if(current_run_id%run_batch_size==0){
cerr<<"Current Run "<<current_run_id<<endl;
}
slv();
current_run_id++;
}
}else{
int t;cin>>t;rep(_,t)
slv();
}
}
这程序好像有点Bug,我给组数据试试?
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3620kb
input:
3 5 1 1 3 7 3 4 4 3 5 10 1 10 100 3 10 100 10 1000 10 10000
output:
2 0 -1
result:
ok 3 lines
Test #2:
score: 0
Accepted
time: 16ms
memory: 3712kb
input:
1135 2 6 5 8 8 8 2 9 2 10 4 4 5 3 6 2 6 8 8 2 8 7 1 9 1 6 4 6 6 1 6 2 9 10 10 1 10 7 5 1 6 2 5 6 7 8 6 10 3 8 1 10 5 4 5 7 6 1 6 6 8 4 9 1 9 4 8 1 1 1 3 2 9 3 3 5 9 6 10 9 7 10 7 3 5 8 6 6 10 6 7 2 9 4 7 5 10 6 3 6 7 8 9 10 1 6 1 4 2 8 5 9 7 10 9 1 10 5 9 2 7 4 5 5 9 6 10 7 4 9 4 9 9 10 3 10 7 1 3 1...
output:
0 3 0 3 1 3 6 0 3 2 2 0 2 5 0 1 5 1 2 0 0 0 1 4 2 0 2 1 3 0 3 2 3 2 5 3 1 1 0 1 1 1 0 2 0 1 0 1 0 2 1 0 2 3 4 4 1 1 1 0 1 3 0 1 4 4 3 0 0 2 2 6 4 2 1 0 0 1 0 2 1 2 0 1 1 3 0 0 1 2 0 3 0 2 2 2 1 0 0 0 5 1 2 0 6 1 1 1 2 2 2 0 3 1 4 3 6 0 8 1 1 3 0 2 2 4 1 1 0 0 0 7 2 2 1 0 0 3 1 2 1 1 2 5 3 0 3 3 3 5 ...
result:
ok 1135 lines
Test #3:
score: 0
Accepted
time: 240ms
memory: 18812kb
input:
1 1000000 2 57841 2 357142 3 496329 3 545446 4 503408 4 590762 5 78281 6 196926 6 349414 7 200245 8 953412 11 616898 12 592065 13 945945 15 20908 15 852722 16 221184 16 401521 17 884478 18 186072 18 931445 19 833560 20 314177 21 138453 21 731965 22 172104 23 595921 25 372617 27 545759 28 977029 30 4...
output:
994024
result:
ok single line: '994024'
Test #4:
score: 0
Accepted
time: 159ms
memory: 18688kb
input:
1 1000000 6 1991827 13 8125243 19 22493 24 4282711 28 356362 39 765152 41 6737899 44 8549464 57 4530192 64 7201376 67 6695629 70 3830504 70 6658581 71 4591382 71 8349070 75 2107828 76 4073563 81 2712838 92 1391185 95 4663781 102 5986957 113 8423636 118 7826607 122 1171556 122 3118750 160 938066 162 ...
output:
9609125
result:
ok single line: '9609125'
Test #5:
score: 0
Accepted
time: 180ms
memory: 18736kb
input:
1 1000000 108 565196036 597 561009880 1007 831705109 2597 55966094 2869 765993518 3025 202191673 3283 237167825 3410 829643653 4879 960747182 7284 679152790 8765 64201585 8899 97619554 9320 713144607 9519 991746776 9913 346063307 11161 970513525 11256 975123550 12073 778562963 14286 206857559 15803 ...
output:
268764694
result:
ok single line: '268764694'
Test #6:
score: 0
Accepted
time: 17ms
memory: 4016kb
input:
1135 9 1 7 3 7 4 10 5 2 6 8 7 10 8 3 9 10 10 4 9 1 4 3 2 4 1 5 3 5 7 7 2 8 4 10 7 10 10 5 3 10 4 4 7 3 8 8 9 7 8 4 1 4 4 5 5 6 4 8 3 8 4 9 2 9 4 3 1 4 5 3 10 9 7 2 6 3 4 4 2 6 3 6 9 8 3 8 7 7 1 5 3 6 4 8 4 9 5 10 8 4 8 10 1 8 6 9 1 6 2 6 3 9 5 9 6 7 6 9 8 1 9 4 10 4 5 3 9 4 3 4 6 6 4 8 5 7 1 1 2 1 3...
output:
3 2 1 1 1 2 2 0 3 3 4 0 4 1 3 2 0 0 0 3 2 6 3 0 1 0 4 0 3 0 2 0 3 0 0 1 4 0 1 2 4 0 2 1 1 1 2 8 1 1 1 1 1 5 0 1 0 3 0 3 2 2 3 2 5 0 0 2 6 4 3 2 2 1 2 0 0 4 5 0 6 5 0 4 3 5 4 1 3 0 0 2 0 8 2 1 1 2 1 3 1 1 4 0 5 0 4 0 1 6 0 7 1 1 0 3 2 1 5 1 3 1 1 8 3 0 2 1 1 0 0 1 1 1 0 6 1 1 1 1 0 0 1 3 1 4 0 2 0 1 ...
result:
ok 1135 lines
Test #7:
score: 0
Accepted
time: 200ms
memory: 18768kb
input:
1 1000000 1 421151 2 313604 3 982622 4 993745 5 997253 6 859839 7 835793 8 324554 9 553026 10 218950 11 672201 12 373214 13 147841 14 445973 15 807912 16 753995 17 564224 18 662086 19 862430 20 378806 21 591406 22 415543 23 490080 24 184083 25 287323 26 578004 27 302543 28 302371 29 689597 30 538475...
output:
492642
result:
ok single line: '492642'
Test #8:
score: 0
Accepted
time: 171ms
memory: 18812kb
input:
1 1000000 4 5761079 27 9913703 31 3480982 33 8607438 37 3321663 64 3998110 72 4273261 78 7438482 84 8988669 96 920933 101 9309679 106 2230436 118 8605436 123 104422 129 7742745 131 4597839 139 9509656 142 3293909 159 9386630 176 9018043 188 3538661 207 9103530 233 2796496 239 7390510 246 2350961 249...
output:
4801594
result:
ok single line: '4801594'
Test #9:
score: 0
Accepted
time: 197ms
memory: 18652kb
input:
1 1000000 1659 745509192 1793 453656007 2417 245865714 3481 181708105 4181 423236911 5279 477367945 7195 966897525 9086 169940320 12642 77818181 14303 26150912 15915 448404964 16486 168882999 16531 105802492 16723 521426994 16754 508715351 19350 563835961 20119 410674400 20775 157959337 20870 320155...
output:
257246803
result:
ok single line: '257246803'
Test #10:
score: 0
Accepted
time: 174ms
memory: 18632kb
input:
1 1000000 1 199948 2 400091 2 463093 3 30523 4 771947 6 320897 7 104702 8 993244 9 926737 10 794612 11 210817 12 351420 13 495204 14 86010 16 589773 17 940494 18 467002 19 785066 20 724000 21 843646 22 47780 23 44610 24 494920 25 717543 27 869625 27 888906 28 972386 29 138651 30 73442 31 229124 32 4...
output:
983172
result:
ok single line: '983172'
Test #11:
score: 0
Accepted
time: 179ms
memory: 18804kb
input:
1 1000000 8 4343641 20 9188668 27 7784999 36 567704 71 225957 104 1690417 111 6719613 130 3931557 131 4091107 138 6733754 140 694514 143 5699446 164 8271151 190 5161164 204 6604398 219 7818039 225 103011 225 1033586 229 5290991 258 6252181 268 7412984 269 1107497 270 5043326 282 5968288 303 893538 3...
output:
9374697
result:
ok single line: '9374697'
Test #12:
score: 0
Accepted
time: 206ms
memory: 18728kb
input:
1 1000000 339 331918409 1828 806301739 4285 288684076 5821 210020913 6987 489751813 8084 346009704 9692 770088627 10407 404154547 10866 421926603 11062 935900735 11722 724947155 13636 832546152 16251 197187715 16251 291560397 17148 385272967 18475 77755669 19621 568102456 21145 20338367 21638 135488...
output:
907611400
result:
ok single line: '907611400'
Test #13:
score: 0
Accepted
time: 15ms
memory: 3636kb
input:
1135 10 1 3 1 7 2 3 2 5 4 7 4 8 6 1 6 4 7 5 7 8 8 1 4 2 2 2 3 3 5 3 10 6 8 9 1 9 4 1 10 7 1 2 5 6 1 6 1 9 5 2 5 9 8 1 8 4 6 5 8 5 9 6 5 6 10 8 3 8 9 9 1 5 1 6 4 9 5 6 5 7 7 2 7 10 10 2 10 3 3 6 9 10 5 10 8 3 4 6 4 7 7 10 1 8 6 7 1 2 2 3 2 10 3 4 3 6 5 4 5 9 3 2 1 2 9 7 7 8 6 2 6 8 7 6 7 7 8 2 8 3 10...
output:
4 7 0 0 2 3 3 1 1 0 4 1 4 1 0 1 0 7 1 2 1 3 3 1 4 4 0 0 2 0 2 5 0 3 1 3 2 4 0 0 4 2 0 6 5 2 1 3 0 1 2 0 2 2 2 2 0 1 4 5 0 6 5 5 0 0 2 0 2 3 1 5 5 4 3 6 0 2 3 7 1 0 0 0 1 1 4 2 5 4 0 0 3 3 0 0 1 0 3 1 2 5 3 2 3 5 0 1 3 7 4 3 3 0 2 0 0 1 1 3 3 1 0 0 3 1 0 0 6 3 6 7 1 0 0 4 4 0 0 1 4 2 3 2 1 6 0 0 2 0 ...
result:
ok 1135 lines
Test #14:
score: 0
Accepted
time: 155ms
memory: 18776kb
input:
1 1000000 2 77901 2 299883 4 428639 4 813168 5 100173 5 782917 7 40384 7 449788 11 236799 11 975047 12 459959 12 627756 14 268070 14 838229 15 42307 15 750817 18 429714 18 542540 20 396104 20 555946 24 382023 24 670885 25 123347 25 160290 26 338330 26 462536 29 78983 29 370000 32 431681 32 899225 33...
output:
993613
result:
ok single line: '993613'
Test #15:
score: 0
Accepted
time: 164ms
memory: 18664kb
input:
1 1000000 4 3326080 4 9907237 39 453090 39 7480697 52 2672608 52 7499680 78 1255223 78 1706176 117 135598 117 161705 131 2847430 131 9067040 201 2370848 201 4954617 256 832631 256 4772412 265 2646914 265 9939501 291 995828 291 7583564 311 4996097 311 8685066 334 1025837 334 8498081 338 2244726 338 2...
output:
9776177
result:
ok single line: '9776177'
Test #16:
score: 0
Accepted
time: 174ms
memory: 18660kb
input:
1 1000000 1387 627417959 1387 938885698 2331 35605535 2331 388781199 2813 377765380 2813 717077893 11097 80601983 11097 601468694 18924 26066416 18924 371804579 21959 646680704 21959 676102593 27236 566499457 27236 811388411 30230 462184409 30230 972254978 30814 68498987 30814 655963890 33826 734512...
output:
804824864
result:
ok single line: '804824864'
Test #17:
score: 0
Accepted
time: 162ms
memory: 18876kb
input:
1 1000000 1 629518 2 558549 3 383006 4 699159 5 984135 6 611950 7 799380 8 832403 9 433826 10 32632 11 47592 12 326209 13 642377 14 571080 15 323890 16 516728 17 213474 18 184305 19 671257 20 790199 21 869443 22 2422 23 891767 24 970860 25 378958 26 423947 27 591026 28 924544 29 461837 30 766426 31 ...
output:
953927
result:
ok single line: '953927'
Test #18:
score: 0
Accepted
time: 161ms
memory: 18636kb
input:
1 1000000 1 2453219 5 7814367 16 6026787 36 3033808 44 2359233 58 5665018 71 2603810 82 206926 84 179910 87 7812418 90 2144755 91 6521845 99 3620108 103 7674842 107 9537913 122 999505 123 1633867 135 3788282 151 9382734 161 996636 184 2564772 196 7480123 211 433598 225 1033075 232 3331142 237 487546...
output:
7974809
result:
ok single line: '7974809'
Test #19:
score: 0
Accepted
time: 171ms
memory: 18812kb
input:
1 1000000 1792 157427572 2445 81759698 3012 507330494 4313 706991734 4587 974169736 4676 666835954 4840 292019582 5392 810147227 5419 942861921 6835 573293913 6953 577978485 8218 455854676 8754 581632453 9288 889057541 10396 668313073 11446 595224977 12789 977427415 13012 77119835 13083 565585658 13...
output:
230091421
result:
ok single line: '230091421'
Test #20:
score: 0
Accepted
time: 160ms
memory: 18736kb
input:
1 999999 1 136925 1 161459 2 313627 2 320466 3 115332 3 437977 4 145504 4 463768 5 12663 5 257195 6 241054 6 405068 7 287300 7 423653 8 302327 8 416337 9 132886 9 280960 10 251656 10 420188 11 85941 11 484618 12 113894 12 157039 13 153213 13 411406 14 198314 14 277990 15 13759 15 108506 16 140009 16...
output:
495373
result:
ok single line: '495373'
Test #21:
score: 0
Accepted
time: 195ms
memory: 18640kb
input:
1 1000000 1 920085 2 679800 3 354411 4 604774 5 513080 6 78813 7 437813 8 52179 9 584742 10 544984 11 549062 12 548084 13 994858 14 632184 15 744175 16 986870 17 189703 18 44963 19 884564 20 715328 21 412696 22 561321 23 884898 24 810307 25 841470 26 3006 27 149403 28 247611 29 418611 30 224205 31 6...
output:
492816
result:
ok single line: '492816'
Test #22:
score: 0
Accepted
time: 167ms
memory: 18688kb
input:
1 1000000 1 401094 2 61773 3 958457 4 338430 5 274850 6 304145 7 678625 8 769677 9 947920 10 86853 11 492710 12 13994 13 718757 14 947397 15 695083 16 749975 17 585381 18 866063 19 500898 20 270430 21 919034 22 382247 23 826137 24 491368 25 320038 26 466770 27 287551 28 968193 29 927970 30 767712 31...
output:
889532765
result:
ok single line: '889532765'
Test #23:
score: 0
Accepted
time: 162ms
memory: 18828kb
input:
1 1000000 1 32137 2 121338 3 237693 4 480172335 4 579589581 5 494444 6 352026 7 666827 8 575582 9 157762 10 481367 11 362684 12 755591 13 387357 14 958444 15 186816 16 752082 17 45589 18 883533 19 595916 20 871738 21 967317 22 777428 23 581938 24 759792 25 273838 26 332489 27 574249 28 41898 29 3325...
output:
995404088
result:
ok single line: '995404088'
Test #24:
score: 0
Accepted
time: 154ms
memory: 18708kb
input:
1 1000000 2 288580820 2 663555163 3 26381652 3 181137097 4 74949959 4 737552704 8 217381500 8 653648155 16 335086067 16 380167296 17 388934831 17 826543591 18 483615861 18 945408385 19 250445258 19 277334791 20 61081324 20 75226646 22 247710165 22 999337344 24 550258386 24 601563613 25 431754165 25 ...
output:
993006109
result:
ok single line: '993006109'
Extra Test:
score: 0
Extra Test Passed