OBI 2017 - Segredo do Cofre

Tenho conhecimentos básicos sobre programação em geral e estou iniciando meus estudos por java. Estou tentando resolver o exercício do seguinte link: https://olimpiada.ic.unicamp.br/pratique/p1/2017/f1/cofre/

Já visualizei respostas em C e C++, mas não consegui trazer aquelas soluções para Java

import java.util.Scanner;

public class cofre {

public static void main(String[] args) {

Scanner teclado = new Scanner(System.in);

	int N, M; 

System.out.println("Qual o número de posições na barra do cofre e o número"
+ "de posições na sequencia que vc vai seguir para deslizar o controle?");
	N = teclado.nextInt();
	M = teclado.nextInt();
	
	int [] x = new int [N];

System.out.println("Qual a ordem dos números da barra do cofre?");
	x[] = teclado.nextInt();

E não sei oque preciso para continuar, pelo que entendi tenho que usar for, mas não sei de que maneira. Poderiam me ajudar?