CSES - Datatähti 2017 alku - Results
Submission details
Task:Järjestys
Sender:planckcons
Submission time:2016-10-05 20:10:49 +0300
Language:Java
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#10.13 s1details
#20.23 s2details
#3--3details

Code

import java.util.Scanner;
import static java.lang.System.arraycopy;
import java.util.Arrays;
import java.util.Collections;
public class Jarjestys {
static int[] arr;
static int n;
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
arr = new int[n];
for(int i = 0; i < n; i++)
{
arr[i] = scan.nextInt();
}
String fin = "";
for(int i = n; i > 0; i--)
{
fin += finder(i) + " " + i + " ";
}
System.out.println(2*n);
System.out.println(fin);
}
public static int[] swap(int n2, int[] arr, int p)
{
int a = n2-(p+1);
int[] arr2 = new int[n2];
int[] arr3 = new int[a];
arraycopy(arr, 0, arr2, a, p+1);
arraycopy(arr, p+1, arr3, 0, a);
Collections.reverse(Arrays.asList(arr3));
arraycopy(arr3, 0, arr2, 0, a);
return arr2;
}
static int finder(int i)
{
for(int j = 0; j < i; j++)
{
if(arr[j] == i)
{
arr = swap(i ,arr, j);
return j+1;
}
}
return 0;
}
}

Test details

Test 1

Group: 1

Verdict:

input
10
9 3 4 7 6 5 10 2 8 1

correct output
32
10 10 9 10 9 8 7 9 4 2 1 4 5 2...

user output
20
7 10 4 9 7 8 4 7 1 6 1 5 4 4 3...

Test 2

Group: 2

Verdict:

input
1000
650 716 982 41 133 1000 876 92...

correct output
3984
207 207 206 207 128 127 126 12...

user output
2000
6 1000 91 999 35 998 665 997 3...

Test 3

Group: 3

Verdict:

input
100000
94703 47808 62366 31885 7091 8...

correct output
399956
98676 98676 98675 98676 62994 ...

user output
(empty)