QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#835946 | #9922. Mah-jong | ucup-team112# | AC ✓ | 1620ms | 5748kb | C++20 | 12.5kb | 2024-12-28 15:35:50 | 2024-12-28 15:35:50 |
Judging History
answer
//#define _GLIBCXX_DEBUG
//#pragma GCC target("avx2")
//#pragma GCC optimize("O3")
//#pragma GCC optimize("unroll-loops")
#include<bits/stdc++.h>
using namespace std;
#ifdef LOCAL
#include <debug_print.hpp>
#define OUT(...) debug_print::multi_print(#__VA_ARGS__, __VA_ARGS__)
#else
#define OUT(...) (static_cast<void>(0))
#endif
#define endl '\n'
#define lfs cout<<fixed<<setprecision(15)
#define ALL(a) (a).begin(),(a).end()
#define ALLR(a) (a).rbegin(),(a).rend()
#define UNIQUE(a) (a).erase(unique((a).begin(),(a).end()),(a).end())
#define spa << " " <<
#define fi first
#define se second
#define MP make_pair
#define MT make_tuple
#define PB push_back
#define EB emplace_back
#define rep(i,n,m) for(ll i = (n); i < (ll)(m); i++)
#define rrep(i,n,m) for(ll i = (ll)(m) - 1; i >= (ll)(n); i--)
namespace template_tute{
using ll = long long;
using ld = long double;
const ll MOD1 = 1e9+7;
const ll MOD9 = 998244353;
const ll INF = 4.1e18;
using P = pair<ll, ll>;
template<typename T> using PQ = priority_queue<T>;
template<typename T> using QP = priority_queue<T,vector<T>,greater<T>>;
template<typename T1, typename T2>bool chmin(T1 &a,T2 b){if(a>b){a=b;return true;}else return false;}
template<typename T1, typename T2>bool chmax(T1 &a,T2 b){if(a<b){a=b;return true;}else return false;}
ll median(ll a,ll b, ll c){return a+b+c-max<ll>({a,b,c})-min<ll>({a,b,c});}
void ans1(bool x){if(x) cout<<"Yes"<<endl;else cout<<"No"<<endl;}
void ans2(bool x){if(x) cout<<"YES"<<endl;else cout<<"NO"<<endl;}
void ans3(bool x){if(x) cout<<"Yay!"<<endl;else cout<<":("<<endl;}
template<typename T1,typename T2>void ans(bool x,T1 y,T2 z){if(x)cout<<y<<endl;else cout<<z<<endl;}
template<typename T1,typename T2,typename T3>void anss(T1 x,T2 y,T3 z){ans(x!=y,x,z);};
template<typename T>void debug(const T &v,ll h,ll w,string sv=" "){for(ll i=0;i<h;i++){cout<<v[i][0];for(ll j=1;j<w;j++)cout<<sv<<v[i][j];cout<<endl;}};
template<typename T>void debug(const T &v,ll n,string sv=" "){if(n!=0)cout<<v[0];for(ll i=1;i<n;i++)cout<<sv<<v[i];cout<<endl;};
template<typename T>void debug(const vector<T>&v){debug(v,v.size());}
template<typename T>void debug(const vector<vector<T>>&v){for(auto &vv:v)debug(vv,vv.size());}
template<typename T>void debug(stack<T> st){while(!st.empty()){cout<<st.top()<<" ";st.pop();}cout<<endl;}
template<typename T>void debug(queue<T> st){while(!st.empty()){cout<<st.front()<<" ";st.pop();}cout<<endl;}
template<typename T>void debug(deque<T> st){while(!st.empty()){cout<<st.front()<<" ";st.pop_front();}cout<<endl;}
template<typename T>void debug(PQ<T> st){while(!st.empty()){cout<<st.top()<<" ";st.pop();}cout<<endl;}
template<typename T>void debug(QP<T> st){while(!st.empty()){cout<<st.top()<<" ";st.pop();}cout<<endl;}
template<typename T>void debug(const set<T>&v){for(auto z:v)cout<<z<<" ";cout<<endl;}
template<typename T>void debug(const multiset<T>&v){for(auto z:v)cout<<z<<" ";cout<<endl;}
template<typename T,size_t size>void debug(const array<T, size> &a){for(auto z:a)cout<<z<<" ";cout<<endl;}
template<typename T,typename V>void debug(const map<T,V>&v){for(auto z:v)cout<<"["<<z.first<<"]="<<z.second<<",";cout<<endl;}
template<typename T>vector<vector<T>>vec(ll x, ll y, T w){vector<vector<T>>v(x,vector<T>(y,w));return v;}
vector<ll>dx={1,-1,0,0,1,1,-1,-1};vector<ll>dy={0,0,1,-1,1,-1,1,-1};
template<typename T>vector<T> make_v(size_t a,T b){return vector<T>(a,b);}
template<typename... Ts>auto make_v(size_t a,Ts... ts){return vector<decltype(make_v(ts...))>(a,make_v(ts...));}
template<typename T1, typename T2>ostream &operator<<(ostream &os, const pair<T1, T2>&p){return os << "(" << p.first << "," << p.second << ")";}
template<typename T>ostream &operator<<(ostream &os, const vector<T> &v){os<<"[";for(auto &z:v)os << z << ",";os<<"]"; return os;}
template<typename T>void rearrange(vector<int>&ord, vector<T>&v){
auto tmp = v;
for(int i=0;i<tmp.size();i++)v[i] = tmp[ord[i]];
}
template<typename Head, typename... Tail>void rearrange(vector<int>&ord,Head&& head, Tail&&... tail){
rearrange(ord, head);
rearrange(ord, tail...);
}
template<typename T> vector<int> ascend(const vector<T>&v){
vector<int>ord(v.size());iota(ord.begin(),ord.end(),0);
sort(ord.begin(),ord.end(),[&](int i,int j){return make_pair(v[i],i)<make_pair(v[j],j);});
return ord;
}
template<typename T> vector<int> descend(const vector<T>&v){
vector<int>ord(v.size());iota(ord.begin(),ord.end(),0);
sort(ord.begin(),ord.end(),[&](int i,int j){return make_pair(v[i],-i)>make_pair(v[j],-j);});
return ord;
}
template<typename T> vector<T> inv_perm(const vector<T>&ord){
vector<T>inv(ord.size());
for(int i=0;i<ord.size();i++)inv[ord[i]] = i;
return inv;
}
ll FLOOR(ll n,ll div){assert(div>0);return n>=0?n/div:(n-div+1)/div;}
ll CEIL(ll n,ll div){assert(div>0);return n>=0?(n+div-1)/div:n/div;}
ll digitsum(ll n){ll ret=0;while(n){ret+=n%10;n/=10;}return ret;}
ll modulo(ll n,ll d){return (n%d+d)%d;};
template<typename T>T min(const vector<T>&v){return *min_element(v.begin(),v.end());}
template<typename T>T max(const vector<T>&v){return *max_element(v.begin(),v.end());}
template<typename T>T acc(const vector<T>&v){return accumulate(v.begin(),v.end(),T(0));};
template<typename T>T reverse(const T &v){return T(v.rbegin(),v.rend());};
//mt19937 mt(chrono::steady_clock::now().time_since_epoch().count());
int popcount(ll x){return __builtin_popcountll(x);};
int poplow(ll x){return __builtin_ctzll(x);};
int pophigh(ll x){return 63 - __builtin_clzll(x);};
template<typename T>T poll(queue<T> &q){auto ret=q.front();q.pop();return ret;};
template<typename T>T poll(priority_queue<T> &q){auto ret=q.top();q.pop();return ret;};
template<typename T>T poll(QP<T> &q){auto ret=q.top();q.pop();return ret;};
template<typename T>T poll(stack<T> &s){auto ret=s.top();s.pop();return ret;};
ll MULT(ll x,ll y){if(LLONG_MAX/x<=y)return LLONG_MAX;return x*y;}
ll POW2(ll x, ll k){ll ret=1,mul=x;while(k){if(mul==LLONG_MAX)return LLONG_MAX;if(k&1)ret=MULT(ret,mul);mul=MULT(mul,mul);k>>=1;}return ret;}
ll POW(ll x, ll k){ll ret=1;for(int i=0;i<k;i++){if(LLONG_MAX/x<=ret)return LLONG_MAX;ret*=x;}return ret;}
std::ostream &operator<<(std::ostream &dest, __int128_t value) {
std::ostream::sentry s(dest);
if (s) {
__uint128_t tmp = value < 0 ? -value : value;
char buffer[128];
char *d = std::end(buffer);
do {
--d;
*d = "0123456789"[tmp % 10];
tmp /= 10;
} while (tmp != 0);
if (value < 0) {
--d;
*d = '-';
}
int len = std::end(buffer) - d;
if (dest.rdbuf()->sputn(d, len) != len) {
dest.setstate(std::ios_base::badbit);
}
}
return dest;
}
namespace converter{
int dict[500];
const string lower="abcdefghijklmnopqrstuvwxyz";
const string upper="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
const string digit="0123456789";
const string digit1="123456789";
void regi_str(const string &t){
for(int i=0;i<t.size();i++){
dict[t[i]]=i;
}
}
void regi_int(const string &t){
for(int i=0;i<t.size();i++){
dict[i]=t[i];
}
}
vector<int>to_int(const string &s,const string &t){
regi_str(t);
vector<int>ret(s.size());
for(int i=0;i<s.size();i++){
ret[i]=dict[s[i]];
}
return ret;
}
vector<int>to_int(const string &s){
auto t=s;
sort(t.begin(),t.end());
t.erase(unique(t.begin(),t.end()),t.end());
return to_int(s,t);
}
vector<vector<int>>to_int(const vector<string>&s,const string &t){
regi_str(t);
vector<vector<int>>ret(s.size(),vector<int>(s[0].size()));
for(int i=0;i<s.size();i++){
for(int j=0;j<s[0].size();j++){
ret[i][j]=dict[s[i][j]];
}
}
return ret;
}
vector<vector<int>>to_int(const vector<string>&s){
string t;
for(int i=0;i<s.size();i++){
t+=s[i];
}
sort(t.begin(),t.end());t.erase(unique(t.begin(),t.end()),t.end());
return to_int(s,t);
}
string to_str(const vector<int>&s,const string &t){
regi_int(t);
string ret;
for(auto z:s)ret+=dict[z];
return ret;
}
vector<string> to_str(const vector<vector<int>>&s,const string &t){
regi_int(t);
vector<string>ret(s.size());
for(int i=0;i<s.size();i++){
for(auto z:s[i])ret[i]+=dict[z];
}
return ret;
}
}
template< typename T = int >
struct edge {
int to;
T cost;
int id;
edge():to(-1),id(-1){};
edge(int to, T cost = 1, int id = -1):to(to), cost(cost), id(id){}
operator int() const { return to; }
};
template<typename T>
using Graph = vector<vector<edge<T>>>;
template<typename T>
Graph<T>revgraph(const Graph<T> &g){
Graph<T>ret(g.size());
for(int i=0;i<g.size();i++){
for(auto e:g[i]){
int to = e.to;
e.to = i;
ret[to].push_back(e);
}
}
return ret;
}
template<typename T>
Graph<T> readGraph(int n,int m,int indexed=1,bool directed=false,bool weighted=false){
Graph<T> ret(n);
for(int es = 0; es < m; es++){
int u,v;
T w=1;
cin>>u>>v;u-=indexed,v-=indexed;
if(weighted)cin>>w;
ret[u].emplace_back(v,w,es);
if(!directed)ret[v].emplace_back(u,w,es);
}
return ret;
}
template<typename T>
Graph<T> readParent(int n,int indexed=1,bool directed=true){
Graph<T>ret(n);
for(int i=1;i<n;i++){
int p;cin>>p;
p-=indexed;
ret[p].emplace_back(i);
if(!directed)ret[i].emplace_back(p);
}
return ret;
}
}
using namespace template_tute;
void solve(){
ll res=0,buf=0;
bool judge = true;
const int N = 8;
vector<int> three(N+1);
three[0] = 1;
for (int i = 1; i <= N; i++) {
three[i] = three[i - 1] * 3;
}
auto f = [&](vector<int> &A) {
int res = 0;
for (int i = 0; i < N; i++) {
res += A[i] * three[i];
}
return res;
};
vector<vector<int>> min_(three[N - 1] * 3, vector<int>(8, 0));
auto dfs = [&](auto &&self, vector<int> &C, int i) {
if (i == N) {
ll tot = acc(C);
if (tot % 3 != 0) {
min_[f(C)][0] = -1;
return;
}
int p = f(C);
for (int j = 0; j < N - 2; j++) {
while (min_[p][j] % 3 != C[j]) {
min_[p][j]++;
min_[p][j + 1]++;
min_[p][j + 2]++;
}
}
if (min_[p][N - 2] % 3 != C[N - 2] or min_[p][N - 1] % 3 != C[N - 1]) {
min_[p][0] = -1;
}
return;
}
for (int j = 0; j < 3; j++) {
C[i] = j;
self(self, C, i + 1);
}
};
{
vector<int> C(N, 0);
dfs(dfs, C, 0);
}
vector<vector<int>>miv(three[6]),thv(three[6]);
rep(i,0,min_.size()){
if(min_[i][0]==-1)continue;
int pos=i%three[6];
assert(miv[pos].empty());
miv[pos]=min_[i];
thv[pos]=vector<int>(8,0);
rep(j,0,8){
thv[pos][j]=miv[pos][j]%3;
}
}
int n;cin>>n;
vector<int>a(n);
rep(i,0,n){
cin>>a[i],a[i]--;
//a[i]=i%8;
}
vector<vector<int>>idx(8);
vector<vector<int>>idv(three[8]);
vector<int>now(8);
rep(i,0,n){
{
int nval=0;
rep(j,0,8){
nval+=(now[j]%3)*three[j];
}
idv[nval%three[8]].PB(i);
}
now[a[i]]++;
idx[a[i]].PB(i);
int nval=0;
rep(j,0,6){
nval+=(now[j]%3)*three[j];
}
vector<int>tnow(8);
rep(j,0,8){
tnow[j]=now[j]%3;
}
rep(j,0,three[6]){
int mi=1e9;
int nval=0;
rep(o,0,8){
int ad=tnow[o]-thv[j][o];
nval+=(ad<0?ad+3:ad)*three[o];
}
rep(o,0,8){
if(now[o]<miv[j][o]){
mi=-1;
break;
}
if(miv[j][o]==0)continue;
chmin(mi,idx[o][now[o]-miv[j][o]]);
}
//OUT(nval,idv.size());
res+=upper_bound(ALL(idv[nval]),mi)-idv[nval].begin();
}
}
cout<<res<<endl;
}
int main(){
cin.tie(nullptr);
ios_base::sync_with_stdio(false);
ll res=0,buf=0;
bool judge = true;
int T = 1;
cin>>T;
while(T--){
solve();
}
return 0;
}
这程序好像有点Bug,我给组数据试试?
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 4220kb
input:
5 4 1 1 1 1 6 1 2 3 1 2 3 7 6 5 8 7 6 3 2 8 1 2 1 2 1 2 1 3 9 2 2 4 4 1 1 1 3 3
output:
2 5 1 3 2
result:
ok 5 number(s): "2 5 1 3 2"
Test #2:
score: 0
Accepted
time: 1159ms
memory: 4408kb
input:
100 992 8 1 8 1 2 3 6 6 1 3 1 8 7 7 4 7 7 1 6 6 4 8 3 7 3 5 1 4 4 7 5 7 5 7 4 3 7 5 2 8 7 1 6 3 6 2 4 3 2 3 1 6 3 1 3 2 6 6 7 4 6 1 1 4 6 4 7 7 8 5 6 4 1 5 4 8 2 4 4 2 1 3 5 7 6 8 3 7 6 6 5 6 4 2 5 4 3 7 3 5 5 3 3 2 7 8 2 7 2 4 4 3 4 1 1 3 5 5 4 6 3 3 3 2 6 1 2 6 4 8 8 6 6 8 7 3 1 1 8 8 7 2 5 6 3 5 ...
output:
51699 61486 5146 1960 241675 6274 11224 46170 435241 1219228 17198 139542 299436 960439 217729 1174 87401 141087 69813 1 78895 0 39510 16757 86551 0 100302 161956 3 512157 58619 196941 26116 61635 28879 11511 2061 4394 74620 907389 172780 23952 524 87857 1305332 1413 11784 156368 11746 23217 25189 9...
result:
ok 100 numbers
Test #3:
score: 0
Accepted
time: 1620ms
memory: 5552kb
input:
1 100000 7 6 3 7 1 2 5 2 4 5 3 2 6 2 2 2 5 6 5 8 6 2 1 8 2 2 1 1 4 8 2 6 4 1 8 6 6 7 8 4 4 5 4 7 8 6 2 3 3 7 5 7 1 1 3 5 2 8 5 6 3 6 2 3 3 8 4 5 7 8 1 5 6 1 3 4 5 7 1 5 4 4 4 6 6 4 2 3 5 2 7 3 5 8 7 1 5 4 5 4 1 5 8 7 2 2 8 2 4 3 5 7 6 6 1 6 6 3 1 1 3 1 7 8 1 7 3 7 8 3 6 3 5 7 5 1 8 7 4 7 5 4 8 1 3 4...
output:
555222305
result:
ok 1 number(s): "555222305"
Test #4:
score: 0
Accepted
time: 1220ms
memory: 4840kb
input:
20 4413 3 6 4 7 7 2 2 7 8 8 4 1 8 6 6 4 7 3 4 3 2 4 2 3 8 2 2 8 4 2 2 8 6 3 3 6 2 3 3 1 7 3 4 2 8 6 3 2 7 6 2 1 5 7 6 8 4 2 1 8 5 4 1 1 2 4 7 4 5 8 2 1 7 1 1 2 2 2 4 6 7 5 4 7 2 6 7 4 8 6 5 8 8 1 5 1 7 8 1 2 2 8 5 1 8 2 4 2 6 1 3 2 1 7 4 4 7 8 5 8 7 4 6 7 4 1 7 8 6 8 7 7 8 4 6 8 3 6 4 8 2 3 7 5 4 4 ...
output:
1069083 436006 1777187 5525353 859904 20447 1921397 11322 113761 632458 911481 140310 5527193 391225 3870234 1392311 5521780 767038 377958 251269
result:
ok 20 numbers
Test #5:
score: 0
Accepted
time: 1502ms
memory: 4760kb
input:
10 1631 1 5 6 3 1 3 3 1 7 3 2 2 1 2 3 4 6 3 7 4 4 2 5 1 3 1 8 6 8 6 6 4 3 3 3 5 1 5 4 3 2 6 5 7 4 4 3 2 6 7 3 7 6 6 1 7 4 3 2 4 5 2 3 6 8 6 7 1 4 5 4 5 1 7 6 5 2 2 3 8 1 1 6 3 3 8 5 6 8 2 3 2 4 4 6 1 1 7 2 6 3 1 4 1 2 5 7 4 4 6 3 8 8 8 1 1 3 8 8 6 7 6 3 2 8 2 1 6 5 5 4 4 5 3 2 5 7 8 7 5 8 8 1 2 1 4 ...
output:
142582 130392 26184001 1706964 29530837 7819026 1889862 2047254 4622629 9958898
result:
ok 10 numbers
Test #6:
score: 0
Accepted
time: 612ms
memory: 4404kb
input:
100 699 3 5 4 4 2 2 2 4 4 5 4 4 4 2 3 5 4 3 3 4 2 4 5 1 2 2 1 3 4 2 3 5 2 4 4 4 4 4 2 2 2 3 2 4 4 3 5 1 1 1 1 1 5 3 2 2 2 4 1 2 4 5 4 3 4 4 3 1 2 1 2 2 5 2 4 2 3 2 3 1 2 3 1 3 1 4 1 1 2 3 4 4 4 5 5 1 1 1 4 2 4 5 2 4 4 2 2 1 4 3 2 4 2 1 3 3 1 1 1 2 3 2 3 3 4 5 3 1 4 3 2 3 4 1 2 3 1 5 4 1 3 1 4 1 1 4 ...
output:
26614 93607 15542 185945 9610 336083 27587 5973 15452 428708 697 64714 259 21 828 113476 31140 105458 80 23536 5525 1159 12042 40221 3480 19417 67593 2269 413557 158230 35791 252920 14694 17018 49089 181 5249 132040 80726 799827 70851 176451 195473 5082 17942 474031 966 2197 7165 361668 165329 13748...
result:
ok 100 numbers
Test #7:
score: 0
Accepted
time: 567ms
memory: 4680kb
input:
20 6438 6 4 6 2 2 3 6 3 3 6 3 5 2 3 5 3 4 4 6 6 5 4 4 4 6 5 2 3 6 6 6 2 4 2 6 3 2 6 4 4 5 5 5 5 2 3 5 6 3 5 2 3 2 3 6 2 6 4 5 6 6 3 6 2 4 6 6 2 2 5 2 5 3 2 2 5 3 5 2 5 4 4 6 5 6 5 3 2 2 6 6 4 4 6 6 5 3 5 2 3 6 4 6 2 6 2 4 2 5 2 3 2 6 4 3 6 2 2 6 5 2 2 4 6 4 2 2 6 6 2 5 5 6 3 5 4 2 4 6 5 5 2 5 2 5 2 ...
output:
2295109 129235 937429 180801 809871 174359 1198354 743354 795518 130580 84599 3763780 1614768 2235523 4161333 5544144 349912 421552 4172118 5545527
result:
ok 20 numbers
Test #8:
score: 0
Accepted
time: 609ms
memory: 4612kb
input:
10 26316 4 3 2 6 6 5 6 4 2 6 3 6 3 6 6 4 5 2 6 5 4 4 5 4 5 3 3 4 3 6 3 2 2 2 2 2 4 2 5 3 5 4 3 6 5 5 2 4 4 4 3 5 3 3 3 5 3 5 3 4 3 6 6 3 2 4 5 4 4 3 3 6 5 6 2 2 2 3 6 2 3 2 3 2 4 5 3 5 3 2 6 2 2 2 6 4 6 6 4 6 6 6 5 2 4 6 3 5 2 3 4 3 5 5 3 3 5 2 2 4 6 2 5 6 4 6 3 5 3 3 3 2 2 3 4 5 2 5 2 2 5 5 3 3 2 5...
output:
38450451 2276831 7270246 704368 5850869 468608 9764821 13710579 4255399 96369
result:
ok 10 numbers
Test #9:
score: 0
Accepted
time: 537ms
memory: 5648kb
input:
1 100000 7 8 8 5 4 7 7 4 4 7 6 8 5 8 8 6 6 4 8 8 6 8 7 8 4 4 7 4 8 7 4 6 6 5 5 6 8 5 6 4 5 6 6 4 4 7 7 5 4 5 8 4 7 5 7 7 8 8 7 8 6 4 8 5 7 8 5 4 4 4 7 7 4 5 7 4 4 6 6 7 6 6 7 7 4 4 4 6 6 4 6 8 5 6 6 5 7 8 5 7 5 7 6 4 6 6 4 7 5 8 6 7 4 6 8 7 4 7 7 6 6 8 5 4 6 7 5 4 4 4 6 6 6 5 4 6 4 6 8 6 5 5 5 5 7 5...
output:
555459907
result:
ok 1 number(s): "555459907"
Test #10:
score: 0
Accepted
time: 555ms
memory: 4520kb
input:
100 1250 5 6 6 6 5 6 6 5 7 6 6 6 5 7 5 5 6 6 7 5 5 5 5 5 5 7 5 5 6 5 5 5 6 7 5 6 5 7 7 7 7 5 5 7 6 5 7 7 5 6 6 5 5 6 6 7 5 6 6 6 6 6 5 7 5 7 7 5 5 6 5 6 6 7 7 7 7 7 7 5 5 6 6 5 5 6 6 6 5 5 5 5 7 6 6 7 7 5 5 7 5 7 5 7 7 6 6 5 7 6 5 6 5 7 6 5 6 7 6 6 6 6 6 6 7 5 6 7 6 7 7 5 7 7 5 5 6 6 5 5 7 6 6 6 6 7...
output:
86841 34629 45 25861 17828 47611 4229 10999 3019 7915 174644 150587 1388747 931 8024 1143 15819 282708 204457 30072 5134 116143 519353 149357 40372 2405 259501 15816 5574 104552 24707 223938 415556 4003 3687 43 0 69380 19410 121396 5303 100311 811 18848 81468 2 5204 635 107048 152629 39533 13647 168...
result:
ok 100 numbers
Test #11:
score: 0
Accepted
time: 463ms
memory: 4708kb
input:
20 4135 6 8 6 7 7 7 7 8 7 6 6 8 6 7 8 7 7 8 7 8 7 8 6 6 7 8 7 8 6 8 6 6 6 7 7 6 6 8 6 6 8 7 7 8 6 7 8 7 8 6 6 6 8 8 7 7 8 6 6 6 7 7 7 7 7 8 7 6 7 6 7 6 8 8 6 7 6 8 7 6 7 6 6 7 7 6 8 7 8 7 6 7 8 7 6 8 6 6 8 6 6 6 7 6 8 8 8 6 7 7 6 8 7 6 7 8 8 6 8 6 6 8 7 6 6 7 6 8 7 8 6 8 7 6 6 8 6 6 6 8 6 6 8 7 7 8 ...
output:
950096 2194477 5554824 81254 5553178 1573274 194238 668 1982043 58228 1291767 5557012 58027 5225 1463164 4280005 609999 1655471 62184 2077822
result:
ok 20 numbers
Test #12:
score: 0
Accepted
time: 481ms
memory: 4636kb
input:
10 15064 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5...
output:
37818172 46634876 15400026 2035255 27812 69660 92555465 15265745 4010655 42669333
result:
ok 10 numbers
Test #13:
score: 0
Accepted
time: 463ms
memory: 5360kb
input:
1 100000 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8...
output:
1666650000
result:
ok 1 number(s): "1666650000"
Test #14:
score: 0
Accepted
time: 3ms
memory: 4332kb
input:
4 1 5 2 5 6 3 7 6 5 3 7 7 7
output:
0 0 1 1
result:
ok 4 number(s): "0 0 1 1"
Test #15:
score: 0
Accepted
time: 469ms
memory: 5368kb
input:
1 100000 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5...
output:
1666650000
result:
ok 1 number(s): "1666650000"
Test #16:
score: 0
Accepted
time: 350ms
memory: 4700kb
input:
10 1686 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 ...
output:
473485 16665000 16665000 2028272 16665000 16665000 16665000 1238058 9559650 11134350
result:
ok 10 numbers
Test #17:
score: 0
Accepted
time: 840ms
memory: 5748kb
input:
1 100000 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3...
output:
885341676
result:
ok 1 number(s): "885341676"
Test #18:
score: 0
Accepted
time: 357ms
memory: 4512kb
input:
10 3465 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 ...
output:
1038578 2938 813044 30782 8661003 8661003 5290235 8661003 5108993 6641544
result:
ok 10 numbers
Extra Test:
score: 0
Extra Test Passed