Submission #16428

# Submission time Handle Problem Language Result Execution time Memory
16428 2015-08-24T09:57:49 Z atomzeno Gondola (IOI14_gondola) C++
20 / 100
16 ms 6356 KB
#include "gondola.h"
#include<algorithm>
using namespace std;
#define MX 250001
int d[MX],check[MX];
int l,ind;
int valid(int n, int inputSeq[]){
    int i,cnt=0,ind;
    for(i=0;i<=250000;i++){
        check[i]=0;
    }
    for(i=0;i<n;i++){
        if(inputSeq[i]<=n){
            cnt=1;
            ind=(inputSeq[i]-1-i)+n;
            ind%=n;
            break;
        }
    }
    for(i=0;i<n;i++){
        check[inputSeq[i]]++;
        if(check[inputSeq[i]]>=2){return 0;}
    }
    if(cnt==0){return 1;}
    for(i=0;i<n;i++){
        d[(ind+i)%n]=inputSeq[i];
    }
    for(i=0;i<n;i++){
        if(d[i]<=n&&d[i]!=(i+1)){
            return 0;
        }
    }
    return 1;
}
struct DT{
    int x,y;
    bool operator<(const DT&r)const{
        return r.x>x;
    }
}make[MX];
int replacement(int n, int gondolaSeq[], int replacementSeq[]){
    int ll=0,j,i,fl=0,o=-1;
    for(i=0;i<n;i++){
        if(gondolaSeq[i]<n){
            fl=1;
            break;
        }
    }
    for(j=0;j<n;j++){
        make[j].x=gondolaSeq[j];
        if(fl==1){
            make[j].y=(gondolaSeq[i]-i+n+j)%n;
            if(make[j].y==0){make[j].y=n;}
        }
    }
    sort(make,make+n);
    if(fl==0){
        for(j=0;j<n;j++){make[j].y=j+1;}
    }
    o=0;
    for(j=0;j<n;j++){
        for(;;){
            if(make[j].x==make[j].y){break;}
            else{
                if(o==0){
                    o=1;
                    replacementSeq[ll++]=make[j].y;
                    make[j].y=n+1;
                }
                else{
                    replacementSeq[ll++]=make[j].y;
                    make[j].y++;
                }
            }
        }
    }
    return ll;
}

//----------------------

int countReplacement(int n, int inputSeq[]){
    return -3;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 6356 KB Output is correct
2 Correct 1 ms 6356 KB Output is correct
3 Correct 0 ms 6356 KB Output is correct
4 Correct 0 ms 6356 KB Output is correct
5 Correct 0 ms 6356 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 6356 KB Output is correct
2 Correct 0 ms 6356 KB Output is correct
3 Correct 0 ms 6356 KB Output is correct
4 Correct 0 ms 6356 KB Output is correct
5 Correct 1 ms 6356 KB Output is correct
6 Correct 0 ms 6356 KB Output is correct
7 Correct 0 ms 6356 KB Output is correct
8 Correct 7 ms 6356 KB Output is correct
9 Correct 0 ms 6356 KB Output is correct
10 Correct 0 ms 6356 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 6356 KB Output is correct
2 Correct 0 ms 6356 KB Output is correct
3 Correct 1 ms 6356 KB Output is correct
4 Correct 0 ms 6356 KB Output is correct
5 Correct 0 ms 6356 KB Output is correct
6 Correct 7 ms 6356 KB Output is correct
7 Correct 0 ms 6356 KB Output is correct
8 Correct 8 ms 6356 KB Output is correct
9 Correct 0 ms 6356 KB Output is correct
10 Correct 0 ms 6356 KB Output is correct
11 Correct 0 ms 6356 KB Output is correct
12 Correct 0 ms 6356 KB Output is correct
13 Correct 7 ms 6356 KB Output is correct
14 Correct 0 ms 6356 KB Output is correct
15 Correct 16 ms 6356 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 6356 KB Output is correct
2 Runtime error 4 ms 6352 KB SIGSEGV Segmentation fault
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 6356 KB Output is correct
2 Runtime error 0 ms 6352 KB SIGSEGV Segmentation fault
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 6356 KB Output is correct
2 Runtime error 2 ms 6352 KB SIGSEGV Segmentation fault
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 6356 KB Output isn't correct - Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 6356 KB Output isn't correct - Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 6356 KB Output isn't correct - Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 6356 KB Output isn't correct - Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -