


복잡하니 종이에다먼저 적어보았다.(#은 특정 반복문 단계를 뜻한다)
1. 반복횟수 먼저 살펴보자
짝수인 경우와 홀수인경우 모두 포용할 수 있다.
(홀수는 대신 중간숫자가 중간숫자로 스스로바뀌는 의미없는 연산이 한번 있음)
2. 바꿀 숫자를 어떻게 가르킬까? -> count 써보자.
앞에서 시작하는 인덱스는 start + count로 표현하고
뒤에서 앞으로가는 인덱스는 end-count로 표현하자
package baek_10811;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Basket2 
{
	public static void main(String[] args) throws IOException {
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());
		
		int N = Integer.parseInt(st.nextToken()), M = Integer.parseInt(st.nextToken());
		
		int[] list = new int[N];
		
		for(int i=0 ; i<list.length;i++)
		{
			list[i] = i+1;
		}
		
		for( int i = 0; i < M ; i++ )
		{
			st = new StringTokenizer(br.readLine());
			int start = Integer.parseInt(st.nextToken())-1,end = Integer.parseInt(st.nextToken())-1;
			//System.out.println("end : " + end); 디버그 코드
			int count =0;
			for(int j=0 ; j < (end-start)/2 + 1 ; j++)
			{
				int temp = list[ start+count ];
				list[ start+count ] = list[ end-count ];
				list[ end-count ] = temp;
				count ++;
			}
			//System.out.println("count : "+count); 디버그 코드
		}
		
		for(int i=0;i<list.length;i++)
		{
			System.out.print(list[i]+" ");
		}
	}
}