import java.util.HashMap;
import java.util.LinkedList;
import java.util.Map;
import java.util.Queue;
import java.util.Scanner;

/**
 * 
 * @author DemonSong
 * 
 *         0121. Seven Puzzle
 * 
 *         7 ????????? 7 ???????????? 8
 *         ????????£?????¢??????????????¨??????????????????????????´????????¨??????????????§?§????????????????????????????????????????????????????????????????????????\??§??????????????? 0, 1, 2,
 *         ..., 7 ??¨?????????????????????????????????????????????????????? 2 ???????¨???? 4 ????????????????????????????????¨?????§????????????
 * 
 *         7 ?????????????§?????????¨??????????????????????????????????????????????????\??????????????????????????§ 0
 *         ?????????????????????????????????????????£??\?????????????????¨??????????????????????????¨?????§?????????????????¨?????°???????????¶?????????(a) ?????¨?????????0
 *         ???????????????????????£??\?????????7 ??????????????¨???????????????????????°??????(b) ?????¶???????????????????????????????????????(a) ?????¶????????? 0
 *         ???????????????????????£??\?????? 2 ??????????????¨???????????????????????°???(c) ?????¶????????????????????????(a) ?????¶?????§ 0
 *         ??????????????¨?????????????????£??\?????????????????? 7 ??¨ 2 ??????????????????????????§???????????\?????????????????\?????????????¨±??????????????????
 * 
 *         ??????????????????????????????????????????????????´????????????(d)
 *         ?????¶?????????????????¨??§?????????????????¶????????\?????¨????????????????????????????????´??????????????§???????????????????°??????°???????????????????????°??????????????????????????????????????????????????\??????????????????????????¶???????????????(d)
 *         ?????¶???????§?????????¨???????????§????????¨????????????
 * 
 *         ??\??????????????????1 ?????? 8 ????????°???????????????????????§???????????????????????????????????????????????¶?????????????????????????????¨????????????????????°??????(a)
 *         ?????°?????¨??????0 7 3 4 2 5 1 6 ?????????(c) ??? 2 7 3 4 0 5 1 6 ??¨???????????????
 * 
 * 
 *         ???(a) 0 7 3 4 2 5 1 6 ?????´??? ???(b) 7 0 3 4 2 5 1 6 ?????´???
 * 
 * 
 * 
 *         ???(c) 2 7 3 4 0 5 1 6 ?????´??? ???(d) 0 1 2 3 4 5 6 7 (????????¶???)
 * 
 *         Input ????¨???¢?????§?????°??????????????????????????????????????\?????????????????§??????????????????????????? ?????????????????????????????°??? 1,000 ??\?????§??????
 * 
 *         Output ???????????????????????????????????¶???????§??????????????°??????°???????????????????????????????????????
 * 
 *         Sample Input 0 1 2 3 4 5 6 7 1 0 2 3 4 5 6 7 7 6 5 4 3 2 1 0 Output
 *         for the Sample Input 0 1 28
 *
 */
public class Main{
	
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		Map<String,Integer> map = bfs();
		while(in.hasNext()){
			String key = "";
			for (int i = 0; i < 2; i++){
				for (int j = 0; j < 4; j++){
					key += in.nextInt();
				}
			}
			System.out.println(map.get(key));
		}
		in.close();
	}
	
	static int[][] dir = {{-1,0},{1,0},{0,-1},{0,1}};
	
	private static Map<String, Integer> bfs(){
		Map<String, Integer> map = new HashMap<>();
		map.put("01234567", 0);
		char[][] init = {{'0','1','2','3'},{'4','5','6','7'}};
		Queue<char[][]> queue = new LinkedList<>();
		queue.offer(init);
		
		while (!queue.isEmpty()){
			char[][] now = queue.poll();
			
			String nows = "";
			
			int[] cur = new int[2];
			for (int i = 0; i < 2; i++){
				for (int j = 0; j < 4; j++){
					nows += now[i][j]-'0';
					if (now[i][j] == '0'){
						cur[0] = i;
						cur[1] = j;
					}
				}
			}
			
			for (int[] d : dir){
				int nx = cur[0] + d[0];
				int ny = cur[1] + d[1];
				if (nx >= 0 && nx < 2 && ny >= 0 && ny < 4){
					char[][] next = clone(now);
					swap(next, cur[0], cur[1], nx, ny);
					char[] ss = new char[8];
					for (int i = 0, k = 0; i < 2; i++){
						for (int j = 0; j < 4; j++){
							ss[k++] = next[i][j];
						}
					}
					String nn = new String(ss);
					if (!map.containsKey(nn)){
						map.put(nn, map.get(nows)+1);
						queue.offer(next);
					}
				}
			}
		}
		return map;
	}
	
	private static char[][] clone(char[][] now){
		int row = now.length;
		int col = now[0].length;
		char[][] clone = new char[row][col];
		for (int i = 0; i < row; i++){
			for (int j = 0; j < col; j++){
				clone[i][j] = now[i][j];
			}
		}
		return clone;
	}
	
	private static void swap(char[][] map, int x1, int y1, int x2, int y2){
		char tmp = map[x1][y1];
		map[x1][y1] = map[x2][y2];
		map[x2][y2] = tmp;
	}
	
}

Measured memory_bytes: 69748