Submission #96209

# Submission time Handle Problem Language Result Execution time Memory
96209 2019-02-07T05:23:26 Z easrui Mobile (BOI12_mobile) C++14
0 / 100
1000 ms 62884 KB
#include <bits/stdc++.h>
using namespace std;
const int MN = 1e6+5;
int N,L,C[MN],num[MN],cur,pos;
double X[MN],Y[MN],A[MN],B[MN],Ipos[MN],x,ans=0,tmp;

bool cmp(int a, int b)
{
    return B[a]<B[b];
}

double getI(int a, int b)
{
     return (B[a]-B[b])/(A[b]-A[a]);
}

int main()
{
    //freopen("C:\\Users\\user\\Desktop\\input.txt","r",stdin);
    cin >> N >> L;
    for(int i=0; i<N; i++){
        cin >> X[i] >> Y[i];
        A[i] = -2*X[i];
        B[i] = X[i]*X[i]+Y[i]*Y[i];
        num[i] = i;
    }
    sort(num,num+N,cmp);
    Ipos[pos] = 0;
    C[pos] = num[0];
    for(int i=1; i<N; i++){
        cur = num[i];
        cout << cur << '\n';
        while(1){
            x = getI(C[pos],cur);
            if(x<0 || x>L) break;
            if(x>Ipos[pos]){
                Ipos[++pos] = x;
                C[pos] = cur;
                break;
            }
            pos--;
        }
    }
    Ipos[pos+1] = L;
    for(int i=0; i<=pos; i++){
        cur = C[i];
        //cout << X[cur] << '\n';
        tmp = max((Ipos[i]-X[cur])*(Ipos[i]-X[cur]),(Ipos[i+1]-X[cur])*(Ipos[i+1]-X[cur]))+Y[cur]*Y[cur];
        /*if(X[cur]<Ipos[i]) tmp = (Ipos[i]-X[cur])*(Ipos[i]-X[cur])+Y[cur]*Y[cur];
        else if(X[cur]>Ipos[i]) tmp = (Ipos[i+1]-X[cur])*(Ipos[i+1]-X[cur])+Y[cur]*Y[cur];
        else tmp = B[cur];*/
        ans = max(ans,tmp);
    }
    cout << sqrt(ans);
}
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 504 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 376 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 7 ms 764 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 7 ms 632 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 7 ms 632 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 8 ms 632 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 86 ms 4236 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 120 ms 4352 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 84 ms 5612 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 122 ms 6068 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 144 ms 6264 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 502 ms 31692 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 693 ms 29604 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 611 ms 37732 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 872 ms 35432 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 813 ms 44052 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1043 ms 41248 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 823 ms 50260 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1079 ms 41772 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1070 ms 62884 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1063 ms 49440 KB Time limit exceeded
2 Halted 0 ms 0 KB -