답안 #287991

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
287991 2020-09-01T07:36:09 Z theStaticMind 곤돌라 (IOI14_gondola) C++14
20 / 100
42 ms 5244 KB
#include<bits/stdc++.h>
#define pb push_back
#define ii pair<int,int>
#define all(x) (x).begin(),(x).end()
#define sz(x) ((int)(x).size())
#define INF 100000000000000000
#define modulo 1000000007
#define mod 998244353
using namespace std;

#include "gondola.h"

int valid(int n, int arr[]){
	int x = -1;

	set<int> S;
	for(int i = 0; i < n; i++) S.insert(arr[i]);
	if(sz(S) != n) return 0;

	for(int i = 0; i < n; i++){
		if(arr[i] <= n){
			x = i;
			break;
		}
	}
	if(x == -1) return 1;

	for(int i = 0; i < n; i++){
		if(arr[(x + i) % n] <= n && arr[(x + i) % n] != (arr[x] + i - 1) % n + 1) return 0;
	}
	return 1;

}

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

int replacement(int n, int arr[], int ans[]){
	vector<int> A(n);
	for(int i = 0; i < n; i++) A[i] = arr[i];

	map<int, int> S;
	for(int i = 0; i < n; i++) S[A[i]] = i;

	int x = -1;
	for(int i = 0; i < n; i++){
		if(arr[i] <= n){
			x = i;
			break;
		}
	}
	for(int i = 0; i < n; i++){
		arr[(x + i) % n] = (arr[x] + i - 1) % n + 1;
	}

	int X = max_element(all(A)) - A.begin();

	for(int i = n + 1; i <= A[X]; i++){
		if(S.count(i)) ans[i - n - 1] = arr[S[i]], arr[S[i]] = i;
		else ans[i - n - 1] = arr[X], arr[X] = i;
	}
	

}

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

int countReplacement(int n, int inputSeq[])
{
  return -3;
}

Compilation message

gondola.cpp: In function 'int replacement(int, int*, int*)':
gondola.cpp:63:1: warning: no return statement in function returning non-void [-Wreturn-type]
   63 | }
      | ^
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 0 ms 384 KB Output is correct
5 Correct 0 ms 384 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 256 KB Output is correct
3 Correct 1 ms 256 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 0 ms 384 KB Output is correct
6 Correct 14 ms 2432 KB Output is correct
7 Correct 35 ms 4216 KB Output is correct
8 Correct 27 ms 4344 KB Output is correct
9 Correct 8 ms 1664 KB Output is correct
10 Correct 31 ms 4984 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 384 KB Output is correct
3 Correct 0 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 384 KB Output is correct
6 Correct 14 ms 2432 KB Output is correct
7 Correct 34 ms 4136 KB Output is correct
8 Correct 30 ms 4344 KB Output is correct
9 Correct 8 ms 1536 KB Output is correct
10 Correct 31 ms 4992 KB Output is correct
11 Correct 1 ms 256 KB Output is correct
12 Correct 1 ms 384 KB Output is correct
13 Correct 17 ms 2304 KB Output is correct
14 Correct 1 ms 384 KB Output is correct
15 Correct 42 ms 5244 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Runtime error 3 ms 640 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 3 ms 640 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 3 ms 640 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 384 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 384 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 384 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 256 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -