Submission #70303

# Submission time Handle Problem Language Result Execution time Memory
70303 2018-08-22T14:55:51 Z alenam0161 Gondola (IOI14_gondola) C++17
10 / 100
25 ms 960 KB
#include "gondola.h"
#include <bits/stdc++.h>
using namespace std;
int pos(int n,int rng[]){
    return min_element(rng,rng+n)-rng;
}
int ds(int p,int i,int n){
    return i<p ? n-p+i:i-p;
}
int valid(int n, int inputSeq[])
{
  int mn=pos(n,inputSeq);
  int mx=inputSeq[mn];
  int se=mn;
  if(inputSeq[mn]>n)return 1;
  for(int j=1;j<n;++j){
      mn++;
      if(mn==n)mn=0;
      if(inputSeq[mn]<=n&&inputSeq[mn]-inputSeq[se]!=ds(se,mn,n)){
          return 0;
      }
      if(inputSeq[mn]<=n)mx=max(mx,inputSeq[mn]);
  }
  return 1;
}

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

int replacement(int n, int gondolaSeq[], int replacementSeq[])
{

  vector<pair<int,int>> vx;
  int p=pos(n,gondolaSeq);
  for(int i=0;i<n;++i){
     if(gondolaSeq[i]>n){
        vx.push_back({gondolaSeq[i],ds(p,i,n)});
     }
  }
  sort(vx.begin(),vx.end());
  int sz=0;
  for(auto to:vx){
    int x=to.first;
    int st=to.second+1;
    if(st!=x){
        replacementSeq[sz++]=st;
    }
    while(true){
        n++;
        st=n;
        if(st<x)
        replacementSeq[sz++]=n;
        else break;
    }
  //  cout<<x<< " "<<st<<endl;
  }
  return sz;
}

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

int countReplacement(int n, int inputSeq[])
{
    return 5;
}
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Output is correct
2 Correct 2 ms 488 KB Output is correct
3 Correct 3 ms 488 KB Output is correct
4 Correct 2 ms 488 KB Output is correct
5 Correct 3 ms 488 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 524 KB Output is correct
2 Correct 2 ms 524 KB Output is correct
3 Correct 3 ms 528 KB Output is correct
4 Correct 2 ms 552 KB Output is correct
5 Correct 2 ms 568 KB Output is correct
6 Correct 7 ms 696 KB Output is correct
7 Correct 18 ms 960 KB Output is correct
8 Correct 16 ms 960 KB Output is correct
9 Correct 5 ms 960 KB Output is correct
10 Correct 20 ms 960 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 960 KB Output is correct
2 Correct 2 ms 960 KB Output is correct
3 Correct 3 ms 960 KB Output is correct
4 Correct 3 ms 960 KB Output is correct
5 Correct 2 ms 960 KB Output is correct
6 Correct 9 ms 960 KB Output is correct
7 Correct 17 ms 960 KB Output is correct
8 Correct 15 ms 960 KB Output is correct
9 Correct 8 ms 960 KB Output is correct
10 Correct 25 ms 960 KB Output is correct
11 Incorrect 2 ms 960 KB Output isn't correct
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 960 KB Output is correct
2 Incorrect 4 ms 960 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 960 KB Output is correct
2 Incorrect 3 ms 960 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 960 KB Output is correct
2 Incorrect 2 ms 960 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 960 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 960 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 960 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 960 KB Output isn't correct
2 Halted 0 ms 0 KB -