Submission #171718

# Submission time Handle Problem Language Result Execution time Memory
171718 2019-12-30T07:14:37 Z gs18103 Gondola (IOI14_gondola) C++14
25 / 100
19 ms 760 KB
#include "gondola.h"
#include <bits/stdc++.h>
#define fi first
#define se second
#define eb emplace_back
#define em emplace
#define all(v) v.begin(), v.end()

using namespace std;
typedef long long ll;
typedef pair <int, int> pii;
typedef pair <ll, ll> pll;

const int MAX = 101010;
const int INF = INT_MAX >> 1;
const ll LINF = LLONG_MAX >> 1;

int valid(int n, int arr[]) {
	vector <bool> chk(250050);
	int idx = -1;
	for(int i = 0; i < n; i++) {
		if(arr[i] <= n && idx == -1) {
			idx = i;
		}
		else if(arr[i] <= n) {
			int temp = arr[idx] + i - idx;
			temp %= n;
			if(temp == 0) temp = n;
			if(temp != arr[i]) return 0;
		}
	}
	sort(arr, arr+n);
	for(int i = 1; i < n; i++) {
		if(arr[i] == arr[i-1]) return 0;
	}
	return 1;
}

int replacement(int n, int gondolaSeq[], int replacementSeq[]) {
	int l = 0;
	vector <int> ori(n, -1);
	for(int i = 0; i < n; i++) {
		l = max(gondolaSeq[i] - n, l);
		if(gondolaSeq[i] <= n && ori[0] == -1) {
			ori[i] = gondolaSeq[i];
			for(int j = 1; j < n; j++) {
				ori[(i+j)%n] = (ori[i] + j) % n;
				if(ori[(i+j)%n] == 0) ori[(i+j)%n] = n;
			}
		}
	}
	vector <pii> temp;
	for(int i = 0; i < n; i++) {
		temp.eb(gondolaSeq[i], i);
	}
	sort(all(temp));
	int idx = 0, last = n + 1;
	for(int i = 0; i < n; i++) {
		if(temp[i].fi > n) {
			replacementSeq[idx++] = ori[temp[i].se];
			while(last < temp[i].fi) {
				replacementSeq[idx++] = last++;
			}
			last++;
		}
	}
	return l;
}

int countReplacement(int n, int inputSeq[]) {
	return -3;
}
# Verdict Execution time Memory Grader output
1 Correct 2 ms 380 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 10 ms 504 KB Output is correct
7 Correct 14 ms 760 KB Output is correct
8 Correct 13 ms 636 KB Output is correct
9 Correct 7 ms 504 KB Output is correct
10 Correct 19 ms 632 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 380 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 9 ms 504 KB Output is correct
7 Correct 15 ms 760 KB Output is correct
8 Correct 14 ms 760 KB Output is correct
9 Correct 7 ms 504 KB Output is correct
10 Correct 19 ms 632 KB Output is correct
11 Correct 2 ms 376 KB Output is correct
12 Correct 2 ms 376 KB Output is correct
13 Correct 7 ms 504 KB Output is correct
14 Correct 2 ms 376 KB Output is correct
15 Correct 14 ms 760 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 252 KB Output is correct
3 Correct 2 ms 256 KB Output is correct
4 Correct 2 ms 256 KB Output is correct
5 Correct 2 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 256 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 256 KB Output is correct
6 Correct 2 ms 256 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
8 Incorrect 2 ms 376 KB Integer -1 violates the range [1, 72]
9 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 380 KB Output is correct
4 Correct 2 ms 256 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
8 Incorrect 3 ms 376 KB Integer -1 violates the range [1, 72]
9 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 256 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 256 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 256 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 256 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -