Submission #382793

# Submission time Handle Problem Language Result Execution time Memory
382793 2021-03-28T08:18:03 Z kshitij_sodani Aliens (IOI16_aliens) C++14
100 / 100
1482 ms 18536 KB
//#pragma GCC optimize("Ofast,unroll-loops")
#include <bits/stdc++.h>
using namespace std;
typedef long long llo;
#define mp make_pair
#define pb push_back
#define a first 
#define b second
#define xx int
//#define endl '\n'
 
 
 
#include "aliens.h"
int mi[1000001];
llo dp[100001];
llo cnt[100001];
pair<llo,llo> sect(pair<llo,llo> aa,pair<llo,llo> bb){
   pair<llo,llo> cc={bb.b-aa.b,aa.a-bb.a};
   if(cc.b<0){
      cc.b=-cc.b;
      cc.a=-cc.a;
   }
   return cc;
}
llo eval(pair<llo,llo> aa,llo bb){
   return aa.a*bb+aa.b;
}
vector<pair<llo,llo>> ss;
llo kk;
pair<llo,llo> check(llo mid){
   vector<pair<llo,llo>> ee;
      llo ind=0;
      map<llo,llo> xz;
      for(llo j=0;j<ss.size();j++){
         dp[j]=(ss[j].b-ss[0].a+1);
         dp[j]*=dp[j];
         cnt[j]=1;
         /*if(i==1){
            continue;
         }*/
         if(ee.size()){
            while(ind+1<ee.size()){
               if(eval(ee[ind],ss[j].b)>=eval(ee[ind+1],ss[j].b)){
                  ind++;
               }
               else{
                  break;
               }
            }
            llo ac=eval(ee[ind],ss[j].b)+ss[j].b*ss[j].b;
            if(ac<dp[j]){
               dp[j]=ac;
               cnt[j]=1+cnt[xz[ee[ind].a]];
            }
         }
        /* if(mid==1023 and j==2){
            cout<<ind<<",,"<<endl;
            for(auto j:ee){
               cout<<j.a<<"::"<<j.b<<endl;
            }
         }*/
         dp[j]+=mid;
         if(j+1<ss.size()){
            llo a2=max(ss[j].b+1-ss[j+1].a,(llo)0);
            a2*=a2;
            a2=-a2;
            a2+=(ss[j+1].a-1)*(ss[j+1].a-1);
            a2+=dp[j];
            llo mm=-2*(ss[j+1].a-1);
            pair<llo,llo> ne={mm,a2};
            while(ee.size()>=2){
               pair<llo,llo> ac=sect(ee.back(),ee[ee.size()-2]);
               pair<llo,llo> bc=sect(ee[ee.size()-2],ne);
               //bc<ac
               if(bc.a*ac.b<bc.b*ac.a){
                  ee.pop_back();
               }
               else{
                  break;
               }
            }
            ee.pb({mm,a2});
            xz[ne.a]=j;
         }
      }
    /*  cout<<mid<<"::";
      for(int i=0;i<ss.size();i++){
         cout<<dp[i]<<",";
      }
      cout<<endl;*/
      return {cnt[ss.size()-1],dp[ss.size()-1]-mid*kk};
}
long long take_photos(xx n, xx m, xx k,vector<xx> aa,vector<xx> bb) {
     ss.clear();
    for(llo i=0;i<m;i++){
      mi[i]=-1;
    }
    for(llo i=0;i<n;i++){
      mi[min(aa[i],bb[i])]=max(mi[min(aa[i],bb[i])],max(aa[i],bb[i]));
      
      }
      llo cur=-1;
      for(llo i=0;i<m;i++){
         if(mi[i]!=-1){
            if(mi[i]>cur){
               ss.pb({i,mi[i]});
               cur=mi[i];
            }
         }
      }
/*      for(auto j:ss){
         cout<<j.a<<"::"<<j.b<<endl;
      }*/
      k=min(k,(int)ss.size());
      kk=k;
      /*for(int i=0;i<ss.size();i++){
         for(int j=1;j<=k+1;j++){
            dp[i].pb(0);
         }
      }*/
      llo low=0;
      for(llo i=39;i>=0;i--){
            /*if(i>0){
               if((1LL<<(i-1))>m*m){
                  continue;
               }
            }*/
         //if(low-(1LL<<i)>=0){
            if(check(low+(1LL<<i)).a>=k){
               low+=(1LL<<i);
            }
         //}
      }
     // assert(check(low).a==k);
 
     // cout<<low<<"::"<<endl;
     // cout<<check(low).a<<":"<<check(low).b<<endl;
 
      //cout<<check(low).a<<"::"<<endl;
 
      return check(low).b;
   /* for(llo i=1;i<=k;i++){
         vector<pair<llo,llo>> ee;
         llo ind=0;
         for(llo j=0;j<ss.size();j++){
            dp[j][i]=(ss[j].b-ss[0].a+1);
            dp[j][i]*=dp[j][i];
            if(i==1){
               continue;
            }
            if(ee.size()){
               while(ind+1<ee.size()){
                  if(eval(ee[ind],ss[j].b)>=eval(ee[ind+1],ss[j].b)){
                     ind++;
                  }
                  else{
                     break;
                  }
               }
               dp[j][i]=min(dp[j][i],eval(ee[ind],ss[j].b)+ss[j].b*ss[j].b);
            }
            if(j+1<ss.size()){
               llo a2=max(ss[j].b+1-ss[j+1].a,(llo)0);
               a2*=a2;
               a2=-a2;
               a2+=(ss[j+1].a-1)*(ss[j+1].a-1);
               a2+=dp[j][i-1];
               llo mm=-2*(ss[j+1].a-1);
               pair<llo,llo> ne={mm,a2};
               while(ee.size()>=2){
                  pair<llo,llo> ac=sect(ee.back(),ee[ee.size()-2]);
                  pair<llo,llo> bc=sect(ee[ee.size()-2],ne);
                  //bc<ac
                  if(bc.a*ac.b<bc.b*ac.a){
                     ee.pop_back();
                  }
                  else{
                     break;
                  }
               }
               ee.pb({mm,a2});
            }
         }
      }*/
  /*  for(llo i=1;i<=k;i++){
         for(llo j=0;j<ss.size();j++){
            cout<<dp[j][i]<<",";
         }
         cout<<endl;
      }*/
      /*cout<<dp[0][1]<<"::"<<dp[1][1]<<endl;
      for(auto j:ss){
         cout<<j.a<<":"<<j.b<<endl;
      }
      cout<<endl;
*/
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  //  return dp[ss.size()-1][k];
}

Compilation message

aliens.cpp: In function 'std::pair<long long int, long long int> check(llo)':
aliens.cpp:35:20: warning: comparison of integer expressions of different signedness: 'llo' {aka 'long long int'} and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   35 |       for(llo j=0;j<ss.size();j++){
      |                   ~^~~~~~~~~~
aliens.cpp:43:24: warning: comparison of integer expressions of different signedness: 'llo' {aka 'long long int'} and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   43 |             while(ind+1<ee.size()){
      |                   ~~~~~^~~~~~~~~~
aliens.cpp:64:16: warning: comparison of integer expressions of different signedness: 'llo' {aka 'long long int'} and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   64 |          if(j+1<ss.size()){
      |             ~~~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Correct answer: answer = 4
2 Correct 1 ms 364 KB Correct answer: answer = 4
3 Correct 1 ms 364 KB Correct answer: answer = 4
4 Correct 1 ms 364 KB Correct answer: answer = 12
5 Correct 1 ms 364 KB Correct answer: answer = 52
6 Correct 1 ms 364 KB Correct answer: answer = 210
7 Correct 1 ms 364 KB Correct answer: answer = 88
8 Correct 1 ms 364 KB Correct answer: answer = 7696
9 Correct 1 ms 364 KB Correct answer: answer = 1
10 Correct 1 ms 364 KB Correct answer: answer = 2374
11 Correct 1 ms 364 KB Correct answer: answer = 9502
12 Correct 1 ms 364 KB Correct answer: answer = 49
13 Correct 1 ms 364 KB Correct answer: answer = 151
14 Correct 1 ms 364 KB Correct answer: answer = 7550
15 Correct 1 ms 284 KB Correct answer: answer = 7220
16 Correct 1 ms 364 KB Correct answer: answer = 7550
17 Correct 1 ms 364 KB Correct answer: answer = 10000
18 Correct 1 ms 364 KB Correct answer: answer = 10000
19 Correct 1 ms 364 KB Correct answer: answer = 624
20 Correct 1 ms 364 KB Correct answer: answer = 10000
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Correct answer: answer = 1
2 Correct 1 ms 364 KB Correct answer: answer = 4
3 Correct 1 ms 384 KB Correct answer: answer = 1
4 Correct 1 ms 364 KB Correct answer: answer = 5
5 Correct 2 ms 364 KB Correct answer: answer = 41
6 Correct 1 ms 364 KB Correct answer: answer = 71923
7 Correct 2 ms 364 KB Correct answer: answer = 77137
8 Correct 3 ms 364 KB Correct answer: answer = 764
9 Correct 4 ms 364 KB Correct answer: answer = 250000
10 Correct 4 ms 364 KB Correct answer: answer = 500
11 Correct 1 ms 364 KB Correct answer: answer = 32
12 Correct 5 ms 364 KB Correct answer: answer = 130050
13 Correct 6 ms 364 KB Correct answer: answer = 5110
14 Correct 2 ms 364 KB Correct answer: answer = 2626
15 Correct 2 ms 364 KB Correct answer: answer = 796
16 Correct 5 ms 364 KB Correct answer: answer = 7580
17 Correct 4 ms 364 KB Correct answer: answer = 1904
18 Correct 3 ms 364 KB Correct answer: answer = 996004
19 Correct 3 ms 364 KB Correct answer: answer = 38817
20 Correct 3 ms 364 KB Correct answer: answer = 4096
21 Correct 2 ms 364 KB Correct answer: answer = 1
22 Correct 1 ms 364 KB Correct answer: answer = 1
23 Correct 5 ms 364 KB Correct answer: answer = 2040
24 Correct 1 ms 364 KB Correct answer: answer = 2
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Correct answer: answer = 4
2 Correct 1 ms 364 KB Correct answer: answer = 4
3 Correct 1 ms 364 KB Correct answer: answer = 4
4 Correct 1 ms 364 KB Correct answer: answer = 12
5 Correct 1 ms 364 KB Correct answer: answer = 52
6 Correct 1 ms 364 KB Correct answer: answer = 210
7 Correct 1 ms 364 KB Correct answer: answer = 88
8 Correct 1 ms 364 KB Correct answer: answer = 7696
9 Correct 1 ms 364 KB Correct answer: answer = 1
10 Correct 1 ms 364 KB Correct answer: answer = 2374
11 Correct 1 ms 364 KB Correct answer: answer = 9502
12 Correct 1 ms 364 KB Correct answer: answer = 49
13 Correct 1 ms 364 KB Correct answer: answer = 151
14 Correct 1 ms 364 KB Correct answer: answer = 7550
15 Correct 1 ms 284 KB Correct answer: answer = 7220
16 Correct 1 ms 364 KB Correct answer: answer = 7550
17 Correct 1 ms 364 KB Correct answer: answer = 10000
18 Correct 1 ms 364 KB Correct answer: answer = 10000
19 Correct 1 ms 364 KB Correct answer: answer = 624
20 Correct 1 ms 364 KB Correct answer: answer = 10000
21 Correct 1 ms 364 KB Correct answer: answer = 1
22 Correct 1 ms 364 KB Correct answer: answer = 4
23 Correct 1 ms 384 KB Correct answer: answer = 1
24 Correct 1 ms 364 KB Correct answer: answer = 5
25 Correct 2 ms 364 KB Correct answer: answer = 41
26 Correct 1 ms 364 KB Correct answer: answer = 71923
27 Correct 2 ms 364 KB Correct answer: answer = 77137
28 Correct 3 ms 364 KB Correct answer: answer = 764
29 Correct 4 ms 364 KB Correct answer: answer = 250000
30 Correct 4 ms 364 KB Correct answer: answer = 500
31 Correct 1 ms 364 KB Correct answer: answer = 32
32 Correct 5 ms 364 KB Correct answer: answer = 130050
33 Correct 6 ms 364 KB Correct answer: answer = 5110
34 Correct 2 ms 364 KB Correct answer: answer = 2626
35 Correct 2 ms 364 KB Correct answer: answer = 796
36 Correct 5 ms 364 KB Correct answer: answer = 7580
37 Correct 4 ms 364 KB Correct answer: answer = 1904
38 Correct 3 ms 364 KB Correct answer: answer = 996004
39 Correct 3 ms 364 KB Correct answer: answer = 38817
40 Correct 3 ms 364 KB Correct answer: answer = 4096
41 Correct 2 ms 364 KB Correct answer: answer = 1
42 Correct 1 ms 364 KB Correct answer: answer = 1
43 Correct 5 ms 364 KB Correct answer: answer = 2040
44 Correct 1 ms 364 KB Correct answer: answer = 2
45 Correct 1 ms 364 KB Correct answer: answer = 4
46 Correct 1 ms 364 KB Correct answer: answer = 9
47 Correct 1 ms 364 KB Correct answer: answer = 9
48 Correct 1 ms 364 KB Correct answer: answer = 21
49 Correct 2 ms 364 KB Correct answer: answer = 71
50 Correct 1 ms 364 KB Correct answer: answer = 77
51 Correct 1 ms 364 KB Correct answer: answer = 400
52 Correct 2 ms 364 KB Correct answer: answer = 996004
53 Correct 1 ms 364 KB Correct answer: answer = 997310
54 Correct 1 ms 364 KB Correct answer: answer = 990781
55 Correct 1 ms 364 KB Correct answer: answer = 996545
56 Correct 1 ms 364 KB Correct answer: answer = 484
57 Correct 1 ms 364 KB Correct answer: answer = 484
58 Correct 4 ms 364 KB Correct answer: answer = 63501
59 Correct 4 ms 512 KB Correct answer: answer = 323501
60 Correct 4 ms 364 KB Correct answer: answer = 752500
61 Correct 2 ms 384 KB Correct answer: answer = 761480
62 Correct 3 ms 364 KB Correct answer: answer = 758932
63 Correct 1 ms 364 KB Correct answer: answer = 1000000
64 Correct 4 ms 364 KB Correct answer: answer = 750500
65 Correct 1 ms 364 KB Correct answer: answer = 1000000
66 Correct 1 ms 364 KB Correct answer: answer = 250000
67 Correct 1 ms 364 KB Correct answer: answer = 250000
68 Correct 1 ms 364 KB Correct answer: answer = 1000000
69 Correct 1 ms 364 KB Correct answer: answer = 994009
70 Correct 2 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 364 KB Correct answer: answer = 25454
72 Correct 3 ms 364 KB Correct answer: answer = 1504
73 Correct 2 ms 364 KB Correct answer: answer = 37486
74 Correct 3 ms 364 KB Correct answer: answer = 4284
75 Correct 2 ms 364 KB Correct answer: answer = 158008
76 Correct 2 ms 364 KB Correct answer: answer = 51860
77 Correct 1 ms 364 KB Correct answer: answer = 12985
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Correct answer: answer = 4
2 Correct 1 ms 364 KB Correct answer: answer = 4
3 Correct 1 ms 364 KB Correct answer: answer = 4
4 Correct 1 ms 364 KB Correct answer: answer = 12
5 Correct 1 ms 364 KB Correct answer: answer = 52
6 Correct 1 ms 364 KB Correct answer: answer = 210
7 Correct 1 ms 364 KB Correct answer: answer = 88
8 Correct 1 ms 364 KB Correct answer: answer = 7696
9 Correct 1 ms 364 KB Correct answer: answer = 1
10 Correct 1 ms 364 KB Correct answer: answer = 2374
11 Correct 1 ms 364 KB Correct answer: answer = 9502
12 Correct 1 ms 364 KB Correct answer: answer = 49
13 Correct 1 ms 364 KB Correct answer: answer = 151
14 Correct 1 ms 364 KB Correct answer: answer = 7550
15 Correct 1 ms 284 KB Correct answer: answer = 7220
16 Correct 1 ms 364 KB Correct answer: answer = 7550
17 Correct 1 ms 364 KB Correct answer: answer = 10000
18 Correct 1 ms 364 KB Correct answer: answer = 10000
19 Correct 1 ms 364 KB Correct answer: answer = 624
20 Correct 1 ms 364 KB Correct answer: answer = 10000
21 Correct 1 ms 364 KB Correct answer: answer = 1
22 Correct 1 ms 364 KB Correct answer: answer = 4
23 Correct 1 ms 384 KB Correct answer: answer = 1
24 Correct 1 ms 364 KB Correct answer: answer = 5
25 Correct 2 ms 364 KB Correct answer: answer = 41
26 Correct 1 ms 364 KB Correct answer: answer = 71923
27 Correct 2 ms 364 KB Correct answer: answer = 77137
28 Correct 3 ms 364 KB Correct answer: answer = 764
29 Correct 4 ms 364 KB Correct answer: answer = 250000
30 Correct 4 ms 364 KB Correct answer: answer = 500
31 Correct 1 ms 364 KB Correct answer: answer = 32
32 Correct 5 ms 364 KB Correct answer: answer = 130050
33 Correct 6 ms 364 KB Correct answer: answer = 5110
34 Correct 2 ms 364 KB Correct answer: answer = 2626
35 Correct 2 ms 364 KB Correct answer: answer = 796
36 Correct 5 ms 364 KB Correct answer: answer = 7580
37 Correct 4 ms 364 KB Correct answer: answer = 1904
38 Correct 3 ms 364 KB Correct answer: answer = 996004
39 Correct 3 ms 364 KB Correct answer: answer = 38817
40 Correct 3 ms 364 KB Correct answer: answer = 4096
41 Correct 2 ms 364 KB Correct answer: answer = 1
42 Correct 1 ms 364 KB Correct answer: answer = 1
43 Correct 5 ms 364 KB Correct answer: answer = 2040
44 Correct 1 ms 364 KB Correct answer: answer = 2
45 Correct 1 ms 364 KB Correct answer: answer = 4
46 Correct 1 ms 364 KB Correct answer: answer = 9
47 Correct 1 ms 364 KB Correct answer: answer = 9
48 Correct 1 ms 364 KB Correct answer: answer = 21
49 Correct 2 ms 364 KB Correct answer: answer = 71
50 Correct 1 ms 364 KB Correct answer: answer = 77
51 Correct 1 ms 364 KB Correct answer: answer = 400
52 Correct 2 ms 364 KB Correct answer: answer = 996004
53 Correct 1 ms 364 KB Correct answer: answer = 997310
54 Correct 1 ms 364 KB Correct answer: answer = 990781
55 Correct 1 ms 364 KB Correct answer: answer = 996545
56 Correct 1 ms 364 KB Correct answer: answer = 484
57 Correct 1 ms 364 KB Correct answer: answer = 484
58 Correct 4 ms 364 KB Correct answer: answer = 63501
59 Correct 4 ms 512 KB Correct answer: answer = 323501
60 Correct 4 ms 364 KB Correct answer: answer = 752500
61 Correct 2 ms 384 KB Correct answer: answer = 761480
62 Correct 3 ms 364 KB Correct answer: answer = 758932
63 Correct 1 ms 364 KB Correct answer: answer = 1000000
64 Correct 4 ms 364 KB Correct answer: answer = 750500
65 Correct 1 ms 364 KB Correct answer: answer = 1000000
66 Correct 1 ms 364 KB Correct answer: answer = 250000
67 Correct 1 ms 364 KB Correct answer: answer = 250000
68 Correct 1 ms 364 KB Correct answer: answer = 1000000
69 Correct 1 ms 364 KB Correct answer: answer = 994009
70 Correct 2 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 364 KB Correct answer: answer = 25454
72 Correct 3 ms 364 KB Correct answer: answer = 1504
73 Correct 2 ms 364 KB Correct answer: answer = 37486
74 Correct 3 ms 364 KB Correct answer: answer = 4284
75 Correct 2 ms 364 KB Correct answer: answer = 158008
76 Correct 2 ms 364 KB Correct answer: answer = 51860
77 Correct 1 ms 364 KB Correct answer: answer = 12985
78 Correct 5 ms 4332 KB Correct answer: answer = 997864126212
79 Correct 5 ms 4332 KB Correct answer: answer = 998608411647
80 Correct 6 ms 4332 KB Correct answer: answer = 995265560477
81 Correct 28 ms 944 KB Correct answer: answer = 10125000
82 Correct 32 ms 940 KB Correct answer: answer = 2291668
83 Correct 16 ms 620 KB Correct answer: answer = 42388
84 Correct 15 ms 620 KB Correct answer: answer = 10318
85 Correct 15 ms 748 KB Correct answer: answer = 3416
86 Correct 36 ms 4716 KB Correct answer: answer = 331708193881
87 Correct 38 ms 4716 KB Correct answer: answer = 2861193756
88 Correct 38 ms 4844 KB Correct answer: answer = 114646930
89 Correct 33 ms 940 KB Correct answer: answer = 9280921
90 Correct 35 ms 4844 KB Correct answer: answer = 999984053400
91 Correct 37 ms 4716 KB Correct answer: answer = 750935949134
92 Correct 5 ms 4332 KB Correct answer: answer = 1000000000000
93 Correct 5 ms 4332 KB Correct answer: answer = 998762383161
94 Correct 35 ms 4716 KB Correct answer: answer = 23017412908
95 Correct 6 ms 4332 KB Correct answer: answer = 728143410622
96 Correct 5 ms 4332 KB Correct answer: answer = 2
97 Correct 36 ms 4832 KB Correct answer: answer = 1824916
98 Correct 37 ms 1260 KB Correct answer: answer = 10680029
99 Correct 36 ms 1308 KB Correct answer: answer = 18351700
100 Correct 31 ms 4836 KB Correct answer: answer = 16040026
101 Correct 8 ms 4332 KB Correct answer: answer = 253968628325
102 Correct 16 ms 620 KB Correct answer: answer = 10267
103 Correct 35 ms 2924 KB Correct answer: answer = 2582408
104 Correct 5 ms 4332 KB Correct answer: answer = 78024964781
105 Correct 6 ms 4332 KB Correct answer: answer = 9866346457
106 Correct 8 ms 4460 KB Correct answer: answer = 3327720949
107 Correct 7 ms 4460 KB Correct answer: answer = 86064128360
108 Correct 10 ms 4460 KB Correct answer: answer = 12698259150
109 Correct 35 ms 4716 KB Correct answer: answer = 1185259288
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Correct answer: answer = 4
2 Correct 1 ms 364 KB Correct answer: answer = 4
3 Correct 1 ms 364 KB Correct answer: answer = 4
4 Correct 1 ms 364 KB Correct answer: answer = 12
5 Correct 1 ms 364 KB Correct answer: answer = 52
6 Correct 1 ms 364 KB Correct answer: answer = 210
7 Correct 1 ms 364 KB Correct answer: answer = 88
8 Correct 1 ms 364 KB Correct answer: answer = 7696
9 Correct 1 ms 364 KB Correct answer: answer = 1
10 Correct 1 ms 364 KB Correct answer: answer = 2374
11 Correct 1 ms 364 KB Correct answer: answer = 9502
12 Correct 1 ms 364 KB Correct answer: answer = 49
13 Correct 1 ms 364 KB Correct answer: answer = 151
14 Correct 1 ms 364 KB Correct answer: answer = 7550
15 Correct 1 ms 284 KB Correct answer: answer = 7220
16 Correct 1 ms 364 KB Correct answer: answer = 7550
17 Correct 1 ms 364 KB Correct answer: answer = 10000
18 Correct 1 ms 364 KB Correct answer: answer = 10000
19 Correct 1 ms 364 KB Correct answer: answer = 624
20 Correct 1 ms 364 KB Correct answer: answer = 10000
21 Correct 1 ms 364 KB Correct answer: answer = 1
22 Correct 1 ms 364 KB Correct answer: answer = 4
23 Correct 1 ms 384 KB Correct answer: answer = 1
24 Correct 1 ms 364 KB Correct answer: answer = 5
25 Correct 2 ms 364 KB Correct answer: answer = 41
26 Correct 1 ms 364 KB Correct answer: answer = 71923
27 Correct 2 ms 364 KB Correct answer: answer = 77137
28 Correct 3 ms 364 KB Correct answer: answer = 764
29 Correct 4 ms 364 KB Correct answer: answer = 250000
30 Correct 4 ms 364 KB Correct answer: answer = 500
31 Correct 1 ms 364 KB Correct answer: answer = 32
32 Correct 5 ms 364 KB Correct answer: answer = 130050
33 Correct 6 ms 364 KB Correct answer: answer = 5110
34 Correct 2 ms 364 KB Correct answer: answer = 2626
35 Correct 2 ms 364 KB Correct answer: answer = 796
36 Correct 5 ms 364 KB Correct answer: answer = 7580
37 Correct 4 ms 364 KB Correct answer: answer = 1904
38 Correct 3 ms 364 KB Correct answer: answer = 996004
39 Correct 3 ms 364 KB Correct answer: answer = 38817
40 Correct 3 ms 364 KB Correct answer: answer = 4096
41 Correct 2 ms 364 KB Correct answer: answer = 1
42 Correct 1 ms 364 KB Correct answer: answer = 1
43 Correct 5 ms 364 KB Correct answer: answer = 2040
44 Correct 1 ms 364 KB Correct answer: answer = 2
45 Correct 1 ms 364 KB Correct answer: answer = 4
46 Correct 1 ms 364 KB Correct answer: answer = 9
47 Correct 1 ms 364 KB Correct answer: answer = 9
48 Correct 1 ms 364 KB Correct answer: answer = 21
49 Correct 2 ms 364 KB Correct answer: answer = 71
50 Correct 1 ms 364 KB Correct answer: answer = 77
51 Correct 1 ms 364 KB Correct answer: answer = 400
52 Correct 2 ms 364 KB Correct answer: answer = 996004
53 Correct 1 ms 364 KB Correct answer: answer = 997310
54 Correct 1 ms 364 KB Correct answer: answer = 990781
55 Correct 1 ms 364 KB Correct answer: answer = 996545
56 Correct 1 ms 364 KB Correct answer: answer = 484
57 Correct 1 ms 364 KB Correct answer: answer = 484
58 Correct 4 ms 364 KB Correct answer: answer = 63501
59 Correct 4 ms 512 KB Correct answer: answer = 323501
60 Correct 4 ms 364 KB Correct answer: answer = 752500
61 Correct 2 ms 384 KB Correct answer: answer = 761480
62 Correct 3 ms 364 KB Correct answer: answer = 758932
63 Correct 1 ms 364 KB Correct answer: answer = 1000000
64 Correct 4 ms 364 KB Correct answer: answer = 750500
65 Correct 1 ms 364 KB Correct answer: answer = 1000000
66 Correct 1 ms 364 KB Correct answer: answer = 250000
67 Correct 1 ms 364 KB Correct answer: answer = 250000
68 Correct 1 ms 364 KB Correct answer: answer = 1000000
69 Correct 1 ms 364 KB Correct answer: answer = 994009
70 Correct 2 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 364 KB Correct answer: answer = 25454
72 Correct 3 ms 364 KB Correct answer: answer = 1504
73 Correct 2 ms 364 KB Correct answer: answer = 37486
74 Correct 3 ms 364 KB Correct answer: answer = 4284
75 Correct 2 ms 364 KB Correct answer: answer = 158008
76 Correct 2 ms 364 KB Correct answer: answer = 51860
77 Correct 1 ms 364 KB Correct answer: answer = 12985
78 Correct 5 ms 4332 KB Correct answer: answer = 997864126212
79 Correct 5 ms 4332 KB Correct answer: answer = 998608411647
80 Correct 6 ms 4332 KB Correct answer: answer = 995265560477
81 Correct 28 ms 944 KB Correct answer: answer = 10125000
82 Correct 32 ms 940 KB Correct answer: answer = 2291668
83 Correct 16 ms 620 KB Correct answer: answer = 42388
84 Correct 15 ms 620 KB Correct answer: answer = 10318
85 Correct 15 ms 748 KB Correct answer: answer = 3416
86 Correct 36 ms 4716 KB Correct answer: answer = 331708193881
87 Correct 38 ms 4716 KB Correct answer: answer = 2861193756
88 Correct 38 ms 4844 KB Correct answer: answer = 114646930
89 Correct 33 ms 940 KB Correct answer: answer = 9280921
90 Correct 35 ms 4844 KB Correct answer: answer = 999984053400
91 Correct 37 ms 4716 KB Correct answer: answer = 750935949134
92 Correct 5 ms 4332 KB Correct answer: answer = 1000000000000
93 Correct 5 ms 4332 KB Correct answer: answer = 998762383161
94 Correct 35 ms 4716 KB Correct answer: answer = 23017412908
95 Correct 6 ms 4332 KB Correct answer: answer = 728143410622
96 Correct 5 ms 4332 KB Correct answer: answer = 2
97 Correct 36 ms 4832 KB Correct answer: answer = 1824916
98 Correct 37 ms 1260 KB Correct answer: answer = 10680029
99 Correct 36 ms 1308 KB Correct answer: answer = 18351700
100 Correct 31 ms 4836 KB Correct answer: answer = 16040026
101 Correct 8 ms 4332 KB Correct answer: answer = 253968628325
102 Correct 16 ms 620 KB Correct answer: answer = 10267
103 Correct 35 ms 2924 KB Correct answer: answer = 2582408
104 Correct 5 ms 4332 KB Correct answer: answer = 78024964781
105 Correct 6 ms 4332 KB Correct answer: answer = 9866346457
106 Correct 8 ms 4460 KB Correct answer: answer = 3327720949
107 Correct 7 ms 4460 KB Correct answer: answer = 86064128360
108 Correct 10 ms 4460 KB Correct answer: answer = 12698259150
109 Correct 35 ms 4716 KB Correct answer: answer = 1185259288
110 Correct 17 ms 5740 KB Correct answer: answer = 999889968863
111 Correct 17 ms 5740 KB Correct answer: answer = 999861384931
112 Correct 17 ms 5740 KB Correct answer: answer = 999811809929
113 Correct 17 ms 5740 KB Correct answer: answer = 999869756441
114 Correct 521 ms 7444 KB Correct answer: answer = 1700000000
115 Correct 625 ms 7732 KB Correct answer: answer = 131666670
116 Correct 153 ms 2772 KB Correct answer: answer = 89478486
117 Correct 176 ms 2864 KB Correct answer: answer = 4971040
118 Correct 176 ms 2700 KB Correct answer: answer = 2711494
119 Correct 679 ms 7736 KB Correct answer: answer = 25252530
120 Correct 640 ms 7436 KB Correct answer: answer = 62500000
121 Correct 517 ms 10464 KB Correct answer: answer = 333175097780
122 Correct 562 ms 10600 KB Correct answer: answer = 33121180179
123 Correct 582 ms 10464 KB Correct answer: answer = 9802314015
124 Correct 663 ms 7792 KB Correct answer: answer = 32567551
125 Correct 655 ms 11308 KB Correct answer: answer = 997525000000
126 Correct 531 ms 10080 KB Correct answer: answer = 752723538884
127 Correct 15 ms 5612 KB Correct answer: answer = 1000000000000
128 Correct 17 ms 5740 KB Correct answer: answer = 999978000121
129 Correct 18 ms 5740 KB Correct answer: answer = 745986144735
130 Correct 13 ms 5228 KB Correct answer: answer = 2
131 Correct 624 ms 11132 KB Correct answer: answer = 277966670
132 Correct 535 ms 11148 KB Correct answer: answer = 2500900082
133 Correct 68 ms 6252 KB Correct answer: answer = 301248349636
134 Correct 298 ms 3844 KB Correct answer: answer = 14118891
135 Correct 18 ms 5612 KB Correct answer: answer = 14384977265
136 Correct 19 ms 5740 KB Correct answer: answer = 3681368330
137 Correct 24 ms 5740 KB Correct answer: answer = 2720316816
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Correct answer: answer = 4
2 Correct 1 ms 364 KB Correct answer: answer = 4
3 Correct 1 ms 364 KB Correct answer: answer = 4
4 Correct 1 ms 364 KB Correct answer: answer = 12
5 Correct 1 ms 364 KB Correct answer: answer = 52
6 Correct 1 ms 364 KB Correct answer: answer = 210
7 Correct 1 ms 364 KB Correct answer: answer = 88
8 Correct 1 ms 364 KB Correct answer: answer = 7696
9 Correct 1 ms 364 KB Correct answer: answer = 1
10 Correct 1 ms 364 KB Correct answer: answer = 2374
11 Correct 1 ms 364 KB Correct answer: answer = 9502
12 Correct 1 ms 364 KB Correct answer: answer = 49
13 Correct 1 ms 364 KB Correct answer: answer = 151
14 Correct 1 ms 364 KB Correct answer: answer = 7550
15 Correct 1 ms 284 KB Correct answer: answer = 7220
16 Correct 1 ms 364 KB Correct answer: answer = 7550
17 Correct 1 ms 364 KB Correct answer: answer = 10000
18 Correct 1 ms 364 KB Correct answer: answer = 10000
19 Correct 1 ms 364 KB Correct answer: answer = 624
20 Correct 1 ms 364 KB Correct answer: answer = 10000
21 Correct 1 ms 364 KB Correct answer: answer = 1
22 Correct 1 ms 364 KB Correct answer: answer = 4
23 Correct 1 ms 384 KB Correct answer: answer = 1
24 Correct 1 ms 364 KB Correct answer: answer = 5
25 Correct 2 ms 364 KB Correct answer: answer = 41
26 Correct 1 ms 364 KB Correct answer: answer = 71923
27 Correct 2 ms 364 KB Correct answer: answer = 77137
28 Correct 3 ms 364 KB Correct answer: answer = 764
29 Correct 4 ms 364 KB Correct answer: answer = 250000
30 Correct 4 ms 364 KB Correct answer: answer = 500
31 Correct 1 ms 364 KB Correct answer: answer = 32
32 Correct 5 ms 364 KB Correct answer: answer = 130050
33 Correct 6 ms 364 KB Correct answer: answer = 5110
34 Correct 2 ms 364 KB Correct answer: answer = 2626
35 Correct 2 ms 364 KB Correct answer: answer = 796
36 Correct 5 ms 364 KB Correct answer: answer = 7580
37 Correct 4 ms 364 KB Correct answer: answer = 1904
38 Correct 3 ms 364 KB Correct answer: answer = 996004
39 Correct 3 ms 364 KB Correct answer: answer = 38817
40 Correct 3 ms 364 KB Correct answer: answer = 4096
41 Correct 2 ms 364 KB Correct answer: answer = 1
42 Correct 1 ms 364 KB Correct answer: answer = 1
43 Correct 5 ms 364 KB Correct answer: answer = 2040
44 Correct 1 ms 364 KB Correct answer: answer = 2
45 Correct 1 ms 364 KB Correct answer: answer = 4
46 Correct 1 ms 364 KB Correct answer: answer = 9
47 Correct 1 ms 364 KB Correct answer: answer = 9
48 Correct 1 ms 364 KB Correct answer: answer = 21
49 Correct 2 ms 364 KB Correct answer: answer = 71
50 Correct 1 ms 364 KB Correct answer: answer = 77
51 Correct 1 ms 364 KB Correct answer: answer = 400
52 Correct 2 ms 364 KB Correct answer: answer = 996004
53 Correct 1 ms 364 KB Correct answer: answer = 997310
54 Correct 1 ms 364 KB Correct answer: answer = 990781
55 Correct 1 ms 364 KB Correct answer: answer = 996545
56 Correct 1 ms 364 KB Correct answer: answer = 484
57 Correct 1 ms 364 KB Correct answer: answer = 484
58 Correct 4 ms 364 KB Correct answer: answer = 63501
59 Correct 4 ms 512 KB Correct answer: answer = 323501
60 Correct 4 ms 364 KB Correct answer: answer = 752500
61 Correct 2 ms 384 KB Correct answer: answer = 761480
62 Correct 3 ms 364 KB Correct answer: answer = 758932
63 Correct 1 ms 364 KB Correct answer: answer = 1000000
64 Correct 4 ms 364 KB Correct answer: answer = 750500
65 Correct 1 ms 364 KB Correct answer: answer = 1000000
66 Correct 1 ms 364 KB Correct answer: answer = 250000
67 Correct 1 ms 364 KB Correct answer: answer = 250000
68 Correct 1 ms 364 KB Correct answer: answer = 1000000
69 Correct 1 ms 364 KB Correct answer: answer = 994009
70 Correct 2 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 364 KB Correct answer: answer = 25454
72 Correct 3 ms 364 KB Correct answer: answer = 1504
73 Correct 2 ms 364 KB Correct answer: answer = 37486
74 Correct 3 ms 364 KB Correct answer: answer = 4284
75 Correct 2 ms 364 KB Correct answer: answer = 158008
76 Correct 2 ms 364 KB Correct answer: answer = 51860
77 Correct 1 ms 364 KB Correct answer: answer = 12985
78 Correct 5 ms 4332 KB Correct answer: answer = 997864126212
79 Correct 5 ms 4332 KB Correct answer: answer = 998608411647
80 Correct 6 ms 4332 KB Correct answer: answer = 995265560477
81 Correct 28 ms 944 KB Correct answer: answer = 10125000
82 Correct 32 ms 940 KB Correct answer: answer = 2291668
83 Correct 16 ms 620 KB Correct answer: answer = 42388
84 Correct 15 ms 620 KB Correct answer: answer = 10318
85 Correct 15 ms 748 KB Correct answer: answer = 3416
86 Correct 36 ms 4716 KB Correct answer: answer = 331708193881
87 Correct 38 ms 4716 KB Correct answer: answer = 2861193756
88 Correct 38 ms 4844 KB Correct answer: answer = 114646930
89 Correct 33 ms 940 KB Correct answer: answer = 9280921
90 Correct 35 ms 4844 KB Correct answer: answer = 999984053400
91 Correct 37 ms 4716 KB Correct answer: answer = 750935949134
92 Correct 5 ms 4332 KB Correct answer: answer = 1000000000000
93 Correct 5 ms 4332 KB Correct answer: answer = 998762383161
94 Correct 35 ms 4716 KB Correct answer: answer = 23017412908
95 Correct 6 ms 4332 KB Correct answer: answer = 728143410622
96 Correct 5 ms 4332 KB Correct answer: answer = 2
97 Correct 36 ms 4832 KB Correct answer: answer = 1824916
98 Correct 37 ms 1260 KB Correct answer: answer = 10680029
99 Correct 36 ms 1308 KB Correct answer: answer = 18351700
100 Correct 31 ms 4836 KB Correct answer: answer = 16040026
101 Correct 8 ms 4332 KB Correct answer: answer = 253968628325
102 Correct 16 ms 620 KB Correct answer: answer = 10267
103 Correct 35 ms 2924 KB Correct answer: answer = 2582408
104 Correct 5 ms 4332 KB Correct answer: answer = 78024964781
105 Correct 6 ms 4332 KB Correct answer: answer = 9866346457
106 Correct 8 ms 4460 KB Correct answer: answer = 3327720949
107 Correct 7 ms 4460 KB Correct answer: answer = 86064128360
108 Correct 10 ms 4460 KB Correct answer: answer = 12698259150
109 Correct 35 ms 4716 KB Correct answer: answer = 1185259288
110 Correct 17 ms 5740 KB Correct answer: answer = 999889968863
111 Correct 17 ms 5740 KB Correct answer: answer = 999861384931
112 Correct 17 ms 5740 KB Correct answer: answer = 999811809929
113 Correct 17 ms 5740 KB Correct answer: answer = 999869756441
114 Correct 521 ms 7444 KB Correct answer: answer = 1700000000
115 Correct 625 ms 7732 KB Correct answer: answer = 131666670
116 Correct 153 ms 2772 KB Correct answer: answer = 89478486
117 Correct 176 ms 2864 KB Correct answer: answer = 4971040
118 Correct 176 ms 2700 KB Correct answer: answer = 2711494
119 Correct 679 ms 7736 KB Correct answer: answer = 25252530
120 Correct 640 ms 7436 KB Correct answer: answer = 62500000
121 Correct 517 ms 10464 KB Correct answer: answer = 333175097780
122 Correct 562 ms 10600 KB Correct answer: answer = 33121180179
123 Correct 582 ms 10464 KB Correct answer: answer = 9802314015
124 Correct 663 ms 7792 KB Correct answer: answer = 32567551
125 Correct 655 ms 11308 KB Correct answer: answer = 997525000000
126 Correct 531 ms 10080 KB Correct answer: answer = 752723538884
127 Correct 15 ms 5612 KB Correct answer: answer = 1000000000000
128 Correct 17 ms 5740 KB Correct answer: answer = 999978000121
129 Correct 18 ms 5740 KB Correct answer: answer = 745986144735
130 Correct 13 ms 5228 KB Correct answer: answer = 2
131 Correct 624 ms 11132 KB Correct answer: answer = 277966670
132 Correct 535 ms 11148 KB Correct answer: answer = 2500900082
133 Correct 68 ms 6252 KB Correct answer: answer = 301248349636
134 Correct 298 ms 3844 KB Correct answer: answer = 14118891
135 Correct 18 ms 5612 KB Correct answer: answer = 14384977265
136 Correct 19 ms 5740 KB Correct answer: answer = 3681368330
137 Correct 24 ms 5740 KB Correct answer: answer = 2720316816
138 Correct 39 ms 7148 KB Correct answer: answer = 999976000144
139 Correct 35 ms 7296 KB Correct answer: answer = 999856102410
140 Correct 30 ms 7148 KB Correct answer: answer = 999958401531
141 Correct 32 ms 7148 KB Correct answer: answer = 999769649944
142 Correct 30 ms 7148 KB Correct answer: answer = 999874525918
143 Correct 1153 ms 14476 KB Correct answer: answer = 6050000000
144 Correct 1376 ms 14364 KB Correct answer: answer = 1112500000
145 Correct 705 ms 9640 KB Correct answer: answer = 4294967296
146 Correct 889 ms 9676 KB Correct answer: answer = 87652406
147 Correct 901 ms 9656 KB Correct answer: answer = 6297664
148 Correct 904 ms 9708 KB Correct answer: answer = 196612
149 Correct 1465 ms 14680 KB Correct answer: answer = 15015100
150 Correct 1465 ms 14456 KB Correct answer: answer = 25000000
151 Correct 1047 ms 16092 KB Correct answer: answer = 333230209550
152 Correct 1329 ms 16364 KB Correct answer: answer = 917123769
153 Correct 1332 ms 18352 KB Correct answer: answer = 95162
154 Correct 1439 ms 14700 KB Correct answer: answer = 382616191
155 Correct 1468 ms 18428 KB Correct answer: answer = 990033333400
156 Correct 1482 ms 18536 KB Correct answer: answer = 990000100000
157 Correct 1165 ms 16192 KB Correct answer: answer = 749998188180
158 Correct 26 ms 7148 KB Correct answer: answer = 1000000000000
159 Correct 29 ms 7276 KB Correct answer: answer = 999988000036
160 Correct 32 ms 7148 KB Correct answer: answer = 744929274393
161 Correct 22 ms 6252 KB Correct answer: answer = 2
162 Correct 1473 ms 18408 KB Correct answer: answer = 1300024
163 Correct 1157 ms 18136 KB Correct answer: answer = 5000700010
164 Correct 116 ms 8296 KB Correct answer: answer = 354997100800
165 Correct 695 ms 7828 KB Correct answer: answer = 257000
166 Correct 683 ms 9812 KB Correct answer: answer = 3765323
167 Correct 675 ms 8480 KB Correct answer: answer = 1525903
168 Correct 29 ms 7276 KB Correct answer: answer = 67618137730
169 Correct 32 ms 7148 KB Correct answer: answer = 12656680171
170 Correct 52 ms 7404 KB Correct answer: answer = 579831736
171 Correct 370 ms 10268 KB Correct answer: answer = 23605611
172 Correct 66 ms 7660 KB Correct answer: answer = 7052481200
173 Correct 145 ms 8504 KB Correct answer: answer = 1314039500
174 Correct 248 ms 9528 KB Correct answer: answer = 302484000
175 Correct 877 ms 13276 KB Correct answer: answer = 52348480