QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#770271 | #4886. Best Sun | I_be_wanna | AC ✓ | 432ms | 17692kb | C++20 | 6.8kb | 2024-11-21 21:19:56 | 2024-11-21 21:19:56 |
Judging History
answer
#include<algorithm>
#include<chrono>
#include<cmath>
#include<cstdio>
#include<random>
namespace IO{
const int ARR_SIZE=1<<20;
#define gc() ((IO::si!=IO::ti||(IO::ti=(IO::si=IO::input)+fread(IO::input,1,IO::ARR_SIZE,stdin))),IO::si!=IO::ti?*(IO::si++):EOF)
char input[ARR_SIZE],*si=input,*ti=input;
template<typename T>
void read(T&num){
bool flag=true;
int ch=gc();
num=0;
while(ch<48||ch>57){
if(ch=='-')flag=false;
ch=gc();
}
while(ch>=48&&ch<=57)num=(num<<3)+(num<<1)+(ch^48),ch=gc();
flag||(num=-num);
}
}
using IO::read;
typedef long long ll;
typedef double real;
const int maxn=300,maxm=maxn*maxn*2;
const real eps=1e-8,inf=1e18;
std::mt19937 mt(std::chrono::steady_clock::now().time_since_epoch().count());
int n,m,cnt,id[maxn+1];
real sum[maxn+1][maxn+1],len[maxn+1][maxn+1],dp[maxn+1];
struct Vector{
ll x,y;
Vector(const ll x=0,const ll y=0):x(x),y(y){}
void input(){
read(x),read(y);
}
friend Vector operator-(const Vector&A,const Vector&B){
return Vector(A.x-B.x,A.y-B.y);
}
friend bool operator<(const Vector&A,const Vector&B){
return A.y!=B.y?A.y<B.y:A.x<B.x;
}
Vector rotate_90()const{
return Vector(-y,x);
}
bool sign()const{
return y>0||(y==0&&x>0);
}
friend ll Cross(const Vector&A,const Vector&B){
return A.x*B.y-A.y*B.x;
}
friend ll Dot(const Vector&A,const Vector&B){
return A.x*B.x+A.y*B.y;
}
}a[maxn+1];
struct Line{
int s,t,type;
Vector v;
friend bool operator<(const Line&A,const Line&B){
const bool sA=A.v.sign(),sB=B.v.sign();
if(sA!=sB)return sA>sB;
ll cross=Cross(A.v,B.v);
if(cross)return cross>0;
else return A.type<B.type;
}
}l[maxm+1],upd[maxm+1];
void init(const int p){
cnt=0;
static int perm[maxn+1],mn[maxn+1],id[maxn+1];
for(int i=p;i<=n;i++)perm[i]=i;
std::sort(perm+p,perm+n+1,[&](const int x,const int y){
const ll cross=Cross(a[x]-a[p],a[y]-a[p]);
if(cross)return cross>0;
else return len[p][x]<len[p][y];
});
for(int i=p;i<=n;i++)mn[i]=1000000000;
for(int i=p;i<=n;i++)id[perm[i]]=i;
for(int i=m;i>=1;i--)
if(l[i].s>=p){
const int s=l[i].s,t=l[i].t;
if(l[i].type)upd[++cnt]=l[i];
else if(t>=p){
if(s==p||t==p)upd[++cnt]=l[i];
else if(id[s]<id[t]&&id[t]<mn[s]){
mn[s]=id[t];
upd[++cnt]=l[i];
}
}
}
std::reverse(upd+1,upd+cnt+1);
}
bool check(const int p,const real x){
for(int i=1;i<=n;i++)dp[i]=-inf;
dp[p]=-eps;
for(int i=1,s,t,type;i<=cnt;i++){
s=upd[i].s,t=upd[i].t,type=upd[i].type;
if(type==1)dp[s]-=x*len[s][t];
else dp[t]=std::max(dp[t],dp[s]+Cross(a[s]-a[p],a[t]-a[p])*0.5-x*sum[s][t]);
}
return dp[p]>eps;
}
void solve(){
read(n),m=0;
for(int i=1;i<=n;i++)a[i].input();
std::sort(a+1,a+n+1);
for(int i=1;i<=n;i++)id[i]=i;
std::shuffle(id+1,id+n+1,mt);
for(int i=1;i<=n;i++)
for(int j=i;j<=n;j++)
len[i][j]=len[j][i]=hypot(a[i].x-a[j].x,a[i].y-a[j].y);
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
if(i!=j){
sum[i][j]=len[i][j];
for(int k=1;k<=n;k++)
if(Cross(a[k]-a[i],a[j]-a[i])>0&&Dot(a[j]-a[i],a[k]-a[i])>=0&&Dot(a[i]-a[j],a[k]-a[j])>0)
sum[i][j]+=std::min(len[i][k],len[j][k]);
l[++m]=Line{i,j,0,a[j]-a[i]};
l[++m]=Line{i,j,1,(a[j]-a[i]).rotate_90()};
}
std::sort(l+1,l+m+1);
real ans=0;
for(int i=1;i<=n;i++){
const int u=id[i];
init(u);
if(check(u,ans)){
real l=ans,r=1e6;
while(r-l>eps){
real mid=(l+r)/2;
if(check(u,mid))l=mid;
else r=mid;
}
ans=l;
}
}
printf("%.8lf\n",ans);
}
int main(){
int T;
read(T);
while(T>0)T--,solve();
return 0;
}
/*#include<algorithm>
#include<chrono>
#include<cmath>
#include<cstdio>
#include<random>
namespace IO{
const int ARR_SIZE=1<<20;
#define gc() ((IO::si!=IO::ti||(IO::ti=(IO::si=IO::input)+fread(IO::input,1,IO::ARR_SIZE,stdin))),IO::si!=IO::ti?*(IO::si++):EOF)
char input[ARR_SIZE],*si=input,*ti=input;
template<typename T>
void read(T&num){
bool flag=true;
int ch=gc();
num=0;
while(ch<48||ch>57){
if(ch=='-')flag=false;
ch=gc();
}
while(ch>=48&&ch<=57)num=(num<<3)+(num<<1)+(ch^48),ch=gc();
flag||(num=-num);
}
}
using IO::read;
typedef long long ll;
typedef double real;
const int maxn=300,maxm=maxn*maxn*2;
const real eps=1e-8,inf=1e18;
std::mt19937 mt(std::chrono::steady_clock::now().time_since_epoch().count());
int n,m,cnt,id[maxn+1];
real sum[maxn+1][maxn+1],len[maxn+1][maxn+1],dp[maxn+1];
struct Vector{
ll x,y;
Vector(const ll x=0,const ll y=0):x(x),y(y){}
void input(){
read(x),read(y);
}
friend Vector operator-(const Vector&A,const Vector&B){
return Vector(A.x-B.x,A.y-B.y);
}
friend bool operator<(const Vector&A,const Vector&B){
return A.y!=B.y?A.y<B.y:A.x<B.x;
}
Vector rotate_90()const{
return Vector(-y,x);
}
bool sign()const{
return y>0||(y==0&&x>0);
}
friend ll Cross(const Vector&A,const Vector&B){
return A.x*B.y-A.y*B.x;
}
friend ll Dot(const Vector&A,const Vector&B){
return A.x*B.x+A.y*B.y;
}
}a[maxn+1];
struct Line{
int s,t,type;
Vector v;
friend bool operator<(const Line&A,const Line&B){
const bool sA=A.v.sign(),sB=B.v.sign();
if(sA!=sB)return sA>sB;
ll cross=Cross(A.v,B.v);
if(cross)return cross>0;
else return A.type<B.type;
}
}l[maxm+1],upd[maxm+1];
void init(const int p){
cnt=0;
static int perm[maxn+1],mn[maxn+1],id[maxn+1];
for(int i=p;i<=n;i++)perm[i]=i;
std::sort(perm+p,perm+n+1,[&](const int x,const int y){
const ll cross=Cross(a[x]-a[p],a[y]-a[p]);
if(cross)return cross>0;
else return len[p][x]<len[p][y];
});
for(int i=p;i<=n;i++)mn[i]=1000000000;
for(int i=p;i<=n;i++)id[perm[i]]=i;
for(int i=m;i>=1;i--)
if(l[i].s>=p){
const int s=l[i].s,t=l[i].t;
if(l[i].type)upd[++cnt]=l[i];
else if(t>=p){
if(s==p||t==p)upd[++cnt]=l[i];
else if(id[s]<id[t]&&id[t]<mn[s]){
mn[s]=id[t];
upd[++cnt]=l[i];
}
}
}
std::reverse(upd+1,upd+cnt+1);
}
bool check(const int p,const real x){
for(int i=1;i<=n;i++)dp[i]=-inf;
dp[p]=-eps;
for(int i=1,s,t,type;i<=cnt;i++){
s=upd[i].s,t=upd[i].t,type=upd[i].type;
if(type==1)dp[s]-=x*len[s][t];
else dp[t]=std::max(dp[t],dp[s]+Cross(a[s]-a[p],a[t]-a[p])*0.5-x*sum[s][t]);
}
return dp[p]>eps;
}
void solve(){
read(n),m=0;
for(int i=1;i<=n;i++)a[i].input();
std::sort(a+1,a+n+1);
for(int i=1;i<=n;i++)id[i]=i;
std::shuffle(id+1,id+n+1,mt);
for(int i=1;i<=n;i++)
for(int j=i;j<=n;j++)
len[i][j]=len[j][i]=hypot(a[i].x-a[j].x,a[i].y-a[j].y);
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
if(i!=j){
sum[i][j]=len[i][j];
for(int k=1;k<=n;k++)
if(Cross(a[k]-a[i],a[j]-a[i])>0&&Dot(a[j]-a[i],a[k]-a[i])>=0&&Dot(a[i]-a[j],a[k]-a[j])>0)
sum[i][j]+=std::min(len[i][k],len[j][k]);
l[++m]=Line{i,j,0,a[j]-a[i]};
int T;
read(T);
while(T>0)T--,solve();
return 0;
}*/
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 17128kb
input:
4 3 -1 -1 1 -1 0 1 4 0 0 10 0 0 10 8 1 5 2 0 -2 0 1 1 -1 1 0 3 8 4 4 -4 4 4 -4 -4 -4 5 6 -6 5 -5 -6 6 -5
output:
0.30901699 1.23686142 0.27113754 1.56310021
result:
ok 4 numbers
Test #2:
score: 0
Accepted
time: 27ms
memory: 17168kb
input:
10000 3 702262 828158 -350821 -420883 -466450 13507 3 28647 -193498 126436 -864937 -287798 738936 3 270358 -269567 745815 -485408 834083 677952 3 -2036 -403634 742978 -263774 975937 -609237 3 584248 -472620 482016 -356760 284902 903881 3 -292004 504925 -935756 373793 -781101 -434659 3 -858513 684433...
output:
85789.08739835 18268.51936167 102489.98839026 66685.75442808 18674.65793741 106468.96513197 14427.02465107 29966.24530254 143547.75108358 13097.17568812 162410.16831697 72070.93241787 29369.99262788 52867.29443110 90314.30834676 99775.92719657 144449.70530837 64406.86641284 157870.71624703 5236.4144...
result:
ok 10000 numbers
Test #3:
score: 0
Accepted
time: 20ms
memory: 15996kb
input:
10000 3 2 2 2 -2 -5 -5 3 -3 5 5 -4 2 -2 3 -4 1 2 -2 -4 4 3 1 -4 2 1 -4 1 3 2 1 -1 1 -3 3 3 4 5 3 -1 -3 -3 3 1 5 5 0 5 -1 3 2 -3 -5 -3 5 3 3 -4 4 0 -5 5 4 3 2 -3 5 0 2 -5 3 -2 -3 5 -3 5 4 3 -1 4 4 4 4 3 3 5 3 -1 4 2 -1 3 2 -3 4 3 -4 3 3 0 4 -2 -2 -1 -3 3 -2 0 -4 -2 4 2 3 -3 -1 3 1 1 -3 3 2 -5 2 3 -4 ...
output:
0.65070070 0.22680906 0.49468256 0.82553262 0.26753247 0.73792845 0.13685294 0.82774579 1.38962812 0.24847616 1.02512626 0.22524512 0.79816885 1.05217763 0.27009075 0.22102800 0.65492915 1.06579254 0.12073618 0.17272121 0.44588252 0.24847616 0.12249857 0.54220875 0.76687431 1.04015999 0.28287072 0.6...
result:
ok 10000 numbers
Test #4:
score: 0
Accepted
time: 35ms
memory: 16024kb
input:
5625 4 -405394 -381883 602267 -335687 -620806 984110 271283 531233 4 196903 -993060 290851 358123 -890076 -717709 -681138 209884 4 -849589 607722 -21517 -586295 208561 -220953 924518 622983 4 -832186 456270 289934 43656 636006 339718 188963 113907 4 -305762 -872205 -520125 368722 -774548 984204 4245...
output:
232625.00427442 268175.82698596 159589.32363052 60440.75304259 133893.12343635 63201.99074862 167697.66340613 129470.01328431 126903.85407281 106643.97126310 131692.31122790 100421.05501621 148490.27481790 68842.24230982 241376.19111612 303904.54643566 77462.33361478 106577.74019515 137546.84410510 ...
result:
ok 5625 numbers
Test #5:
score: 0
Accepted
time: 30ms
memory: 16524kb
input:
5625 4 -2 -1 4 -5 -2 -4 -4 -4 4 -1 -5 4 4 2 -5 -5 1 4 -3 -4 -3 -1 -5 -1 4 -2 4 -2 4 -4 1 -1 -1 5 -4 4 -3 -5 -1 4 5 -1 3 5 4 -4 -2 1 4 -1 1 3 4 4 -5 3 -3 3 5 -4 -1 4 4 1 2 2 -5 1 0 0 -3 4 -5 -4 2 -3 5 3 -3 2 4 2 -2 -4 3 1 -4 -5 -5 4 -3 5 -2 4 1 3 1 -4 4 0 -5 5 -5 0 -2 -3 2 4 0 5 -1 -4 -2 0 4 -1 4 4 -...
output:
0.49196820 1.60802393 0.67646356 0.81468212 1.57279540 0.20204480 0.44236730 0.30558321 1.50890691 1.32278752 0.52185594 0.39828045 1.21949462 1.17749125 1.39510269 1.07377312 0.75408978 0.60755910 1.43731922 0.96711234 0.95348784 1.48362428 1.22737302 0.40100290 0.54947989 0.77911416 0.94653699 0.3...
result:
ok 5625 numbers
Test #6:
score: 0
Accepted
time: 38ms
memory: 17692kb
input:
3600 5 114127 146710 467065 -311758 189643 449065 -303893 -215009 -789281 -140748 5 -449893 654165 -899120 -560520 719351 652759 285007 471281 987628 -767128 5 -587522 89736 -355416 -178001 801765 512722 314119 -136906 350051 762194 5 85697 920768 161507 -533920 -536515 401333 -27632 -987465 112237 ...
output:
84655.19954864 270848.72686704 202824.03673404 135615.19187394 119666.50854350 89811.87077070 254983.15357530 189662.74726651 64951.65708944 154748.44229101 214519.68207904 163467.53280025 278857.25744085 191490.49790582 172625.52964262 144947.52481481 232735.62583868 118266.93262444 189921.58730067...
result:
ok 3600 numbers
Test #7:
score: 0
Accepted
time: 36ms
memory: 16436kb
input:
3600 5 2 6 -6 4 4 0 -5 0 3 1 5 0 3 5 -5 2 6 4 0 2 -4 5 2 -2 -6 -3 -5 -5 -1 3 -4 0 5 0 6 -3 -5 5 1 4 -3 -5 6 5 0 -6 -6 -5 -2 6 1 6 2 0 5 2 1 6 5 4 -1 -3 -2 -6 4 5 -1 -2 5 -6 -1 4 -2 3 6 4 5 -6 3 6 -5 4 -4 3 -1 2 -6 5 5 -4 1 -5 1 0 5 -1 3 2 5 -4 6 2 -4 1 -4 5 5 -1 6 5 -3 0 0 6 -2 5 -5 5 2 6 5 2 -1 -4 ...
output:
1.39173381 1.06000767 1.33866049 2.17864149 1.86776352 1.25506442 1.81970545 0.94630231 1.13164331 1.57723908 0.52121242 1.53717956 0.94733847 1.04709098 0.55722979 1.20859702 1.23028937 0.66757417 0.36650601 0.69434254 0.51214143 0.43629639 0.86109734 0.89543785 0.56201396 0.93771581 2.32565969 1.4...
result:
ok 3600 numbers
Test #8:
score: 0
Accepted
time: 33ms
memory: 16776kb
input:
3600 5 -3 1 0 -1 2 -3 4 1 5 0 5 -3 -5 1 -5 -2 -2 3 2 1 5 5 -4 -2 4 5 5 3 2 -4 -4 0 5 0 4 -5 3 1 4 -1 1 4 1 5 5 -3 2 -5 -3 -4 -1 1 5 1 5 -5 5 -2 1 -3 2 2 2 -4 5 5 -2 -3 -1 3 1 1 3 -2 -2 -2 5 2 1 -2 -3 -3 -3 5 0 -5 4 5 2 2 -2 5 5 -1 4 -5 -2 4 5 -4 5 -1 -3 -2 5 5 -1 -4 3 5 -5 -4 -1 -3 0 -1 -5 1 -4 -3 5...
output:
0.54338085 1.20793126 1.57549457 0.80751814 1.55667960 0.68244906 0.90744012 0.95083899 0.85377088 1.37130822 0.74264080 0.40149162 0.74742762 0.49346915 0.71121449 0.60929985 1.23443617 0.43381483 1.46793333 0.69546245 0.69148017 0.84331999 1.19870888 1.03369444 0.73676861 0.56639073 0.37563567 0.4...
result:
ok 3600 numbers
Test #9:
score: 0
Accepted
time: 32ms
memory: 16424kb
input:
3600 5 0 2 3 -7 7 3 -6 -1 6 -6 5 -3 6 -5 6 -10 -2 -4 -8 -9 8 5 -2 2 2 -9 6 -3 2 10 -5 7 5 -7 9 9 -4 -8 -2 4 10 9 -8 5 -8 -5 -10 0 -7 0 0 -7 6 8 5 10 -7 8 -8 3 1 0 -4 -7 -4 5 2 -9 -3 1 -4 -2 -3 -3 0 1 5 -8 5 -10 6 2 -8 6 -5 -6 8 5 5 8 -8 -9 3 -7 -9 0 -4 3 5 2 -5 2 0 6 7 10 5 -8 -6 5 -10 -2 7 -6 -10 5...
output:
2.10520091 1.53676866 1.60702025 3.52634732 1.97843350 1.08251858 0.94616322 1.60232712 2.88377215 0.94081487 1.70136256 1.60092024 1.93348725 0.69186596 1.83398430 0.63064797 3.43395187 2.44870675 1.55166606 1.14548902 0.87351668 1.59386514 1.44431029 2.75500571 1.92290063 2.27837100 1.59588949 0.8...
result:
ok 3600 numbers
Test #10:
score: 0
Accepted
time: 42ms
memory: 16416kb
input:
900 10 -10 -1 8 -6 7 -1 -5 8 -7 -9 4 -2 -9 10 -10 -8 9 9 -3 -6 10 -5 9 -7 -1 -9 -7 -4 6 -5 2 1 -4 10 8 -9 -9 2 0 7 7 10 -3 -7 9 -4 -5 2 1 1 6 7 -4 7 4 -6 0 1 -8 -5 3 -5 10 -3 -10 -8 -7 -5 -5 -6 3 -3 -1 7 -9 1 -5 9 -7 -2 3 -4 9 10 0 1 -3 8 -3 7 4 -10 10 -6 -5 -8 10 4 4 3 0 -8 3 -10 10 4 -5 2 0 -5 -10...
output:
2.60602748 1.26334179 1.18389911 0.88272847 1.87822730 1.56981358 1.55329532 1.63283232 1.57379948 0.99709596 0.94248299 1.41728263 1.40176657 1.69398666 2.86287784 2.05535977 2.20877686 1.32023938 1.50586448 1.59580010 1.95305549 1.18657177 1.05632826 2.23476087 1.39019187 1.29038561 1.79916751 1.6...
result:
ok 900 numbers
Test #11:
score: 0
Accepted
time: 42ms
memory: 16808kb
input:
900 10 670067 394291 -797310 -637136 -435933 -923795 120936 309795 -934569 -688829 950758 634654 983083 900196 174829 181896 -191047 177910 258020 672165 10 424046 -657491 391198 -14995 -302986 -597011 -96387 -486090 -164032 -356501 -891789 12548 -703186 -924511 808215 -212606 659523 490088 738901 5...
output:
81290.16183838 91483.73319616 100154.02705584 192606.41482031 177441.64743442 76150.89237218 177358.70537388 230115.87926681 280209.26284503 61218.54302128 137504.79163774 168344.54404108 162167.18181490 133102.52926923 177087.45634574 163543.60977599 184494.30986897 223914.71846452 115820.32050253 ...
result:
ok 900 numbers
Test #12:
score: 0
Accepted
time: 61ms
memory: 17272kb
input:
225 20 -4 -9 -5 3 7 -10 10 7 2 7 1 4 2 2 -5 -1 -9 -1 -3 10 -8 -6 0 -5 7 -4 -6 -8 -7 -5 -1 -7 -1 -3 8 -6 6 3 8 2 20 8 2 6 -8 -3 -6 -2 9 5 -2 0 8 8 0 -7 -9 3 1 4 -10 4 7 -6 -1 -8 -7 2 -8 -8 -1 1 -9 2 -10 1 2 -7 8 -10 3 20 5 8 0 -3 9 -9 -10 -4 -10 -2 9 10 -2 8 -6 -10 6 -6 -3 7 5 10 7 7 -5 -6 -2 3 -4 0 ...
output:
0.61278698 1.11379072 0.76153643 1.33080591 0.75404922 1.33283797 0.67031479 1.03531280 0.90681740 0.97696666 0.75028489 0.77803158 0.71790492 0.57158023 0.77210611 0.76929103 1.89044600 0.86009606 1.07773324 1.31298108 0.80164684 0.86961991 0.85732366 1.22753378 1.13628670 0.85317805 1.00145782 0.8...
result:
ok 225 numbers
Test #13:
score: 0
Accepted
time: 61ms
memory: 15752kb
input:
225 20 983700 -466859 -20884 -364855 807044 -308568 -785298 910840 -61173 -276993 -872226 -878552 -235162 831941 978289 938037 585612 -598517 545857 403231 -450887 -558997 -293044 -675226 -900628 102932 -836719 -530135 -534412 -681687 -487340 -227869 161252 -557533 397943 464720 170537 68556 413322 ...
output:
103902.05260055 185063.03845737 60443.65737232 118360.36460965 157018.78513076 103511.46580624 65549.69947930 67043.35882888 105010.27053268 93450.05766844 96005.22820761 54350.09860130 134718.53534313 98397.35457010 71213.29496638 77465.39394476 75212.09304081 123612.18376110 65830.97198550 124001....
result:
ok 225 numbers
Test #14:
score: 0
Accepted
time: 16ms
memory: 17492kb
input:
6 50 -107573 -479674 -523931 117259 705403 519626 -802569 -162243 510741 876735 206326 -333274 448335 -276206 482965 -837837 873180 -965235 -359525 608790 -53827 782310 689038 -718590 739597 111296 420387 -953079 -492679 -243600 -929509 1174 800731 -968797 208236 193620 249265 499134 848153 771472 5...
output:
20480.38285400 21190.02214975 27821.67259588 28113.31934053 27223.96760793 31857.83571002
result:
ok 6 numbers
Test #15:
score: 0
Accepted
time: 69ms
memory: 17172kb
input:
36 50 569818 -279771 972561 928848 383 744221 -453534 -154445 293032 502859 744851 436690 293077 503053 657 744258 317135 -276665 293067 502799 277103 -439313 282010 -387735 276848 -439025 972274 928763 -110443 -507380 744799 436605 282061 -387926 -453689 -154326 317468 -276534 -453630 -154510 28193...
output:
81019.42745440 77527.25877298 55029.24642331 42253.15438565 72715.85782299 197374.63074065 37469.72258192 66130.35299536 54454.59780651 125611.08836852 71800.20627305 87529.33676880 143932.88761479 95010.13468151 86801.34793850 106229.48886611 99367.30864578 93764.65109078 39239.21686785 93281.92394...
result:
ok 36 numbers
Test #16:
score: 0
Accepted
time: 71ms
memory: 17420kb
input:
36 50 -767165 583573 -284890 -681002 -423448 -259226 -285077 -680913 -921552 -557651 -767105 583853 -423314 -259380 790075 -225214 -921537 -557431 -767305 583770 -767124 583508 -921629 -557448 -423530 -259463 -284954 -680837 -423426 -259294 -423469 -259099 -767302 583744 -921772 -557672 -423503 -259...
output:
36643.60548061 73491.05805764 355454.44021316 76283.49151534 114070.22077705 102751.94233993 346834.50859623 142611.05793786 246800.06711391 131055.88666659 22279.88798922 215589.65762508 83424.86881416 51800.23454296 43278.86168791 278223.48375561 81405.21672051 259224.13939944 47585.10562034 64924...
result:
ok 36 numbers
Test #17:
score: 0
Accepted
time: 70ms
memory: 16744kb
input:
36 50 -757926 470127 -757550 470454 250422 -395772 250548 -395869 568164 -704082 250417 -396082 -757845 470427 444672 170989 250387 -395875 250484 -395866 568177 -704202 -757558 470484 250530 -395763 250488 -395883 -757754 470201 250529 -396062 -757760 470255 568050 -704413 444991 171218 444963 1710...
output:
41461.41573125 61470.34590209 198910.99996738 35019.36864543 139342.57970783 26339.66283905 247086.67924896 108103.83297862 269038.97005726 40491.22676409 99838.87395829 174035.14973715 172811.21197072 155604.88030162 30013.67059707 250614.39519471 84144.56247186 200056.43754916 77869.81728237 16350...
result:
ok 36 numbers
Test #18:
score: 0
Accepted
time: 96ms
memory: 16468kb
input:
9 100 -79487 826724 571284 354748 -312616 727781 -838024 249391 -79475 826592 796988 -514208 -847898 -839919 584481 896431 -847899 -839656 -312680 727782 22798 138363 466409 -215121 -36729 -925283 677267 -733543 -789119 581936 -789111 581860 271104 629366 571356 354824 -946155 -832752 571238 354954 ...
output:
23149.75059490 20131.16912086 50752.30367532 22743.25124248 21418.01994225 24609.13297506 20676.57527059 23043.75591518 35012.22030295
result:
ok 9 numbers
Test #19:
score: 0
Accepted
time: 0ms
memory: 17672kb
input:
1 10 2 -999 3 -998 4 -995 5 -990 6 -983 7 -974 8 -963 9 -950 1000 1000 -1000 1000
output:
293.82710869
result:
ok found '293.8271087', expected '293.8271087', error '0.0000000'
Test #20:
score: 0
Accepted
time: 248ms
memory: 17180kb
input:
1 300 -1000000 700000 -999999 697990 -999998 695960 -999997 693910 -999996 691840 -999995 689750 -999994 687640 -999993 685510 -999992 683360 -999991 681190 -999990 679000 -999989 676790 -999988 674560 -999987 672310 -999986 670040 -999985 667750 -999984 665440 -999983 663110 -999982 660760 -999981 ...
output:
46.71794537
result:
ok found '46.7179454', expected '46.7179454', error '0.0000000'
Test #21:
score: 0
Accepted
time: 268ms
memory: 16660kb
input:
1 300 -9999 -2 -9998 -3 -9995 -4 -9990 -5 -9983 -6 -9974 -7 -9963 -8 -9950 -9 -9935 -10 -9918 -11 -9899 -12 -9878 -13 -9855 -14 -9830 -15 -9803 -16 -9774 -17 -9743 -18 -9710 -19 -9675 -20 -9638 -21 -9599 -22 -9558 -23 -9515 -24 -9470 -25 -9423 -26 -9374 -27 -9323 -28 -9270 -29 -9215 -30 -9158 -31 -9...
output:
2367.69213797
result:
ok found '2367.6921380', expected '2367.6921380', error '0.0000000'
Test #22:
score: 0
Accepted
time: 253ms
memory: 16660kb
input:
1 300 700000 1000000 697990 999999 695960 999998 693910 999997 691840 999996 689750 999995 687640 999994 685510 999993 683360 999992 681190 999991 679000 999990 676790 999989 674560 999988 672310 999987 670040 999986 667750 999985 665440 999984 663110 999983 660760 999982 658390 999981 656000 999980...
output:
46.71794537
result:
ok found '46.7179454', expected '46.7179454', error '0.0000000'
Test #23:
score: 0
Accepted
time: 291ms
memory: 16724kb
input:
1 300 -2 9999 -3 9998 -4 9995 -5 9990 -6 9983 -7 9974 -8 9963 -9 9950 -10 9935 -11 9918 -12 9899 -13 9878 -14 9855 -15 9830 -16 9803 -17 9774 -18 9743 -19 9710 -20 9675 -21 9638 -22 9599 -23 9558 -24 9515 -25 9470 -26 9423 -27 9374 -28 9323 -29 9270 -30 9215 -31 9158 -32 9099 -33 9038 -34 8975 -35 8...
output:
2367.69213798
result:
ok found '2367.6921380', expected '2367.6921380', error '0.0000000'
Test #24:
score: 0
Accepted
time: 242ms
memory: 16828kb
input:
1 300 1000000 -700000 999999 -697990 999998 -695960 999997 -693910 999996 -691840 999995 -689750 999994 -687640 999993 -685510 999992 -683360 999991 -681190 999990 -679000 999989 -676790 999988 -674560 999987 -672310 999986 -670040 999985 -667750 999984 -665440 999983 -663110 999982 -660760 999981 -...
output:
46.71794537
result:
ok found '46.7179454', expected '46.7179454', error '0.0000000'
Test #25:
score: 0
Accepted
time: 287ms
memory: 16720kb
input:
1 300 9999 2 9998 3 9995 4 9990 5 9983 6 9974 7 9963 8 9950 9 9935 10 9918 11 9899 12 9878 13 9855 14 9830 15 9803 16 9774 17 9743 18 9710 19 9675 20 9638 21 9599 22 9558 23 9515 24 9470 25 9423 26 9374 27 9323 28 9270 29 9215 30 9158 31 9099 32 9038 33 8975 34 8910 35 8843 36 8774 37 8703 38 8630 3...
output:
2367.69213797
result:
ok found '2367.6921380', expected '2367.6921380', error '0.0000000'
Test #26:
score: 0
Accepted
time: 272ms
memory: 16740kb
input:
1 300 -700000 -1000000 -697990 -999999 -695960 -999998 -693910 -999997 -691840 -999996 -689750 -999995 -687640 -999994 -685510 -999993 -683360 -999992 -681190 -999991 -679000 -999990 -676790 -999989 -674560 -999988 -672310 -999987 -670040 -999986 -667750 -999985 -665440 -999984 -663110 -999983 -6607...
output:
46.71794537
result:
ok found '46.7179454', expected '46.7179454', error '0.0000000'
Test #27:
score: 0
Accepted
time: 271ms
memory: 16712kb
input:
1 300 2 -999999 3 -999998 4 -999995 5 -999990 6 -999983 7 -999974 8 -999963 9 -999950 10 -999935 11 -999918 12 -999899 13 -999878 14 -999855 15 -999830 16 -999803 17 -999774 18 -999743 19 -999710 20 -999675 21 -999638 22 -999599 23 -999558 24 -999515 25 -999470 26 -999423 27 -999374 28 -999323 29 -9...
output:
24.91606411
result:
ok found '24.9160641', expected '24.9160641', error '0.0000000'
Test #28:
score: 0
Accepted
time: 267ms
memory: 17680kb
input:
1 300 2 -44999 3 -44998 4 -44995 5 -44990 6 -44983 7 -44974 8 -44963 9 -44950 10 -44935 11 -44918 12 -44899 13 -44878 14 -44855 15 -44830 16 -44803 17 -44774 18 -44743 19 -44710 20 -44675 21 -44638 22 -44599 23 -44558 24 -44515 25 -44470 26 -44423 27 -44374 28 -44323 29 -44270 30 -44215 31 -44158 32...
output:
479.30206607
result:
ok found '479.3020661', expected '479.3020661', error '0.0000000'
Test #29:
score: 0
Accepted
time: 295ms
memory: 16708kb
input:
1 300 2 -9999 3 -9998 4 -9995 5 -9990 6 -9983 7 -9974 8 -9963 9 -9950 10 -9935 11 -9918 12 -9899 13 -9878 14 -9855 15 -9830 16 -9803 17 -9774 18 -9743 19 -9710 20 -9675 21 -9638 22 -9599 23 -9558 24 -9515 25 -9470 26 -9423 27 -9374 28 -9323 29 -9270 30 -9215 31 -9158 32 -9099 33 -9038 34 -8975 35 -8...
output:
2367.69213797
result:
ok found '2367.6921380', expected '2367.6921380', error '0.0000000'
Test #30:
score: 0
Accepted
time: 253ms
memory: 17352kb
input:
1 300 2 -49999 3 -49998 4 -49995 5 -49990 6 -49983 7 -49974 8 -49963 9 -49950 10 -49935 11 -49918 12 -49899 13 -49878 14 -49855 15 -49830 16 -49803 17 -49774 18 -49743 19 -49710 20 -49675 21 -49638 22 -49599 23 -49558 24 -49515 25 -49470 26 -49423 27 -49374 28 -49323 29 -49270 30 -49215 31 -49158 32...
output:
7347.57877374
result:
ok found '7347.5787737', expected '7347.5787737', error '0.0000000'
Test #31:
score: 0
Accepted
time: 283ms
memory: 16620kb
input:
1 300 2 -99999 3 -99998 4 -99995 5 -99990 6 -99983 7 -99974 8 -99963 9 -99950 10 -99935 11 -99918 12 -99899 13 -99878 14 -99855 15 -99830 16 -99803 17 -99774 18 -99743 19 -99710 20 -99675 21 -99638 22 -99599 23 -99558 24 -99515 25 -99470 26 -99423 27 -99374 28 -99323 29 -99270 30 -99215 31 -99158 32...
output:
7264.82354868
result:
ok found '7264.8235487', expected '7264.8235487', error '0.0000000'
Test #32:
score: 0
Accepted
time: 288ms
memory: 17264kb
input:
1 300 2 -999999 3 -999998 4 -999995 5 -999990 6 -999983 7 -999974 8 -999963 9 -999950 10 -999935 11 -999918 12 -999899 13 -999878 14 -999855 15 -999830 16 -999803 17 -999774 18 -999743 19 -999710 20 -999675 21 -999638 22 -999599 23 -999558 24 -999515 25 -999470 26 -999423 27 -999374 28 -999323 29 -9...
output:
80244.51374044
result:
ok found '80244.5137404', expected '80244.5137404', error '0.0000000'
Test #33:
score: 0
Accepted
time: 406ms
memory: 17068kb
input:
1 300 -582688 -338066 65950 664506 726195 -342195 778617 -357210 -854288 556277 300499 294357 643715 884595 145808 699895 823594 197029 -326906 -938477 -635849 -984773 -133686 656789 -435448 690719 903384 -472986 82595 315750 -162788 541714 -77694 -237304 -850565 -426412 248922 -808508 -719332 -6663...
output:
1478.83005588
result:
ok found '1478.8300559', expected '1478.8300559', error '0.0000000'
Test #34:
score: 0
Accepted
time: 399ms
memory: 16656kb
input:
1 300 329399 -774056 -453420 -971922 -963389 -692906 -901061 -690960 -954671 -555749 954332 -856245 97920 127454 422794 -72309 402518 -482396 -274243 -242236 -63992 224700 841180 586025 -266496 -824730 -178245 -230280 680876 907784 553835 674598 89593 396532 143208 -684880 538608 -578116 -422477 757...
output:
972.42328023
result:
ok found '972.4232802', expected '972.4232802', error '0.0000000'
Test #35:
score: 0
Accepted
time: 432ms
memory: 16756kb
input:
1 300 -360611 262745 -266788 208188 -959303 -907228 -443316 -204307 682906 -640611 -629502 -217089 -323067 -687634 437059 491032 -924621 882842 844758 667473 765630 -661241 -192156 -841346 -154832 -812793 -47327 10282 -597348 957691 892586 942751 142330 937555 953415 -727776 -605831 643868 -310790 -...
output:
1247.63544757
result:
ok found '1247.6354476', expected '1247.6354476', error '0.0000000'
Test #36:
score: 0
Accepted
time: 418ms
memory: 16508kb
input:
1 300 -206748 733504 405233 346961 -313290 -216319 -485737 -231831 -164104 165946 -515020 -589364 982156 -80607 873259 619605 -482416 -888108 -569548 252891 -445640 901994 985477 -967333 42455 -483916 73904 760015 -943641 942808 396828 484027 -841584 -24224 -175993 952815 790566 541282 -279849 -3442...
output:
999.01939637
result:
ok found '999.0193964', expected '999.0193964', error '0.0000000'
Test #37:
score: 0
Accepted
time: 411ms
memory: 16768kb
input:
1 300 580502 -850604 -828356 778 184624 -535893 -697221 -969976 896503 -655248 -76966 -243055 60920 160544 44843 -658551 -447963 886466 278568 389553 -623912 -127161 678049 -413324 -430351 -318993 -817724 -933164 -711215 340590 -74113 689203 68654 -100261 182253 786353 970301 867792 -749733 -811174 ...
output:
842.05907240
result:
ok found '842.0590724', expected '842.0590724', error '0.0000000'
Test #38:
score: 0
Accepted
time: 400ms
memory: 17516kb
input:
1 300 -316120 -118763 45309 190875 409669 -105265 -506284 573308 -516833 322648 -866719 -936225 -12677 -985703 711314 569209 941787 83443 -514860 686132 -790586 -545380 430362 -424821 -833415 938854 -942534 683223 -240135 606924 -403050 269157 -215947 985881 -549116 600378 459464 -595098 725250 1147...
output:
1024.49786984
result:
ok found '1024.4978698', expected '1024.4978698', error '0.0000000'
Test #39:
score: 0
Accepted
time: 430ms
memory: 16652kb
input:
1 300 -173407 -202877 781435 -868900 -708456 340380 -576940 717700 182725 270819 936854 705842 -558936 563953 -442817 -537862 456021 536960 -280357 -280460 865334 142839 774139 179758 441597 150328 97859 -980348 -33644 644740 -930102 492073 -672777 225390 567301 -123428 272474 613299 939529 -568972 ...
output:
999.85890083
result:
ok found '999.8589008', expected '999.8589008', error '0.0000000'
Test #40:
score: 0
Accepted
time: 408ms
memory: 16724kb
input:
1 300 -345250 -831776 -186776 -708481 -461210 345548 -813591 339981 875529 -243454 -612714 -565349 342248 -74704 440632 -335722 -680195 541251 -40910 -905178 644877 899186 274573 743026 873540 -442740 535392 952686 797733 860447 -20479 505758 -951532 613082 -890210 663776 767606 -285569 466835 86332...
output:
931.05231122
result:
ok found '931.0523112', expected '931.0523112', error '0.0000000'
Test #41:
score: 0
Accepted
time: 426ms
memory: 17392kb
input:
1 300 370249 -59123 -776101 -977670 -243135 -532403 -579041 96635 569778 -862215 413939 -366298 481224 272525 393367 -40979 483831 994010 -233019 628811 -143918 477955 339126 11331 -107685 517540 622176 -412060 -177324 -205192 431089 749790 -95536 -210836 548410 -707079 616094 -127500 -783278 -72261...
output:
933.76048671
result:
ok found '933.7604867', expected '933.7604867', error '0.0000000'
Test #42:
score: 0
Accepted
time: 397ms
memory: 16684kb
input:
1 300 572725 -213611 493742 -808213 -710052 -380510 893881 -474967 9640 -788263 -459353 580756 -26412 638961 440498 -802856 453695 -912107 22051 -399011 547574 755649 -686907 874963 -504322 -340049 692117 -724428 668948 874184 48863 726276 -663172 -738633 360506 985895 589965 723490 -791113 -581246 ...
output:
1077.84138065
result:
ok found '1077.8413807', expected '1077.8413807', error '0.0000000'
Test #43:
score: 0
Accepted
time: 359ms
memory: 17604kb
input:
1 300 -18347 947891 -18966 947674 -18153 949129 371892 55936 -19040 948495 -19316 948666 -19369 949236 -18720 948324 -19293 949610 -17823 949522 -19243 948220 -18639 948552 -17649 949411 371651 54266 -19228 948586 -17602 948463 -19485 949188 -18243 948112 -17773 948743 372205 54093 -18298 949126 371...
output:
430.90165084
result:
ok found '430.9016508', expected '430.9016509', error '0.0000000'
Test #44:
score: 0
Accepted
time: 301ms
memory: 17120kb
input:
1 300 -74242 456694 -526886 299650 -74220 457055 -73487 456305 -73859 456656 61507 -819056 60998 -819121 -526707 299370 -526276 300041 61552 -817655 -526738 299576 -74124 456791 -527186 299008 61978 -818405 -74813 455682 60560 -819145 -73451 455525 -74892 457185 -73693 456477 60721 -818196 60214 -81...
output:
90267.09313414
result:
ok found '90267.0931341', expected '90267.0931341', error '0.0000000'
Test #45:
score: 0
Accepted
time: 274ms
memory: 17608kb
input:
1 300 574585 394710 574622 393610 -423278 771639 -424926 771360 -424084 771410 -355381 -781788 -355711 -782971 573941 394518 -356559 -782641 -356747 -782401 468958 -215431 -423584 771961 574237 394615 -423230 771874 574235 394702 -424141 771353 -423250 771823 469278 -214864 -423677 771854 470643 -21...
output:
217408.14813530
result:
ok found '217408.1481353', expected '217408.1481353', error '0.0000000'
Test #46:
score: 0
Accepted
time: 286ms
memory: 16668kb
input:
1 300 426446 450150 704880 -177836 705023 -177943 365125 -787336 426646 450111 365336 -787509 -488479 191560 365230 -787626 351178 85715 426393 450079 426499 450252 350929 85788 351095 85697 350955 85774 351185 85404 426289 450343 -488469 191487 365412 -787578 351069 85754 -488205 191341 365332 -787...
output:
20170.87090638
result:
ok found '20170.8709064', expected '20170.8709064', error '0.0000000'
Test #47:
score: 0
Accepted
time: 221ms
memory: 16740kb
input:
1 300 -400243 814451 22608 892635 -400101 814103 6514 778975 993334 -477496 6342 779132 462061 255284 -51701 297766 22472 892564 340929 -448021 479819 -339231 -400286 814390 211825 26983 6556 779317 993060 -477289 993308 -477342 -51535 297899 340706 -447842 340883 -447854 -400416 814256 -400283 8141...
output:
9230.44231632
result:
ok found '9230.4423163', expected '9230.4423163', error '0.0000000'
Test #48:
score: 0
Accepted
time: 219ms
memory: 16712kb
input:
1 300 -474014 -864992 -630838 -307407 -630606 -307503 -124096 -743059 -771964 728691 772586 240106 -772183 728879 391413 526273 199846 912927 428389 -576556 -308290 579377 -255160 -108840 772406 240313 -367068 -161358 772571 240365 -308290 579342 391393 526479 -415239 -4737 -367131 -161451 199868 91...
output:
15025.97484381
result:
ok found '15025.9748438', expected '15025.9748438', error '0.0000000'
Test #49:
score: 0
Accepted
time: 269ms
memory: 16688kb
input:
1 300 50620 -400031 50739 -399860 510490 905605 -231850 -472272 819819 -32769 556769 430166 510572 905474 -835681 -521539 -892931 517162 308414 643333 726593 422199 864670 -884154 -923273 383788 405709 273425 -479932 -974056 410500 738923 186655 767275 -182443 950085 -567600 -112887 603101 210566 93...
output:
3406.45354521
result:
ok found '3406.4535452', expected '3406.4535452', error '0.0000000'
Test #50:
score: 0
Accepted
time: 309ms
memory: 17076kb
input:
1 300 176452 -329206 -579449 737212 -127383 552242 979657 -356153 80368 -694513 460265 -812959 445149 141242 -457009 -165865 607661 133016 -790741 -28932 833272 -591475 -579288 737176 -259244 232127 -387178 -302780 176289 -329051 -581332 414202 130425 339972 280492 -57804 -23731 -362222 -538093 -596...
output:
1990.34056787
result:
ok found '1990.3405679', expected '1990.3405679', error '0.0000000'
Test #51:
score: 0
Accepted
time: 338ms
memory: 17168kb
input:
1 300 1000000 0 999780 20942 999122 41875 998026 62790 996492 83677 994521 104528 992114 125333 989272 146083 985996 166768 982287 187381 978147 207911 973578 228350 968583 248689 963162 268919 957319 289031 951056 309016 944376 328866 937281 348572 929776 368124 921863 387515 913545 406736 904827 4...
output:
499972.25253631
result:
ok found '499972.2525363', expected '499972.2525363', error '0.0000000'
Test #52:
score: 0
Accepted
time: 383ms
memory: 16656kb
input:
1 299 1000000 0 999111 42156 996445 84238 992008 126169 985807 167877 977854 209286 968162 250323 956748 290915 943634 330989 928842 370475 912398 409303 894332 447402 874676 484707 853465 521149 830736 556665 806531 591191 780891 624666 753863 657030 725495 688227 695837 718199 664941 746895 632864...
output:
208109.81485943
result:
ok found '208109.8148594', expected '208109.8148594', error '0.0000000'