알고리즘 풀이
[백준] 10811번: 바구니 뒤집기 - java 풀이
코디드
2023. 5. 16. 18:03
i 값은 커지고 j 값은 작아지는 것과,
i 부터 j까지 전부 처리하는 것이 아닌 중간값까지만 구현하는걸 생각해놓고도
막상 두가지를 구현하지 못해서 다른 풀이를 참고했다.
전부 핑계고 결국 풀지 못했다는 얘기가 된다
좀 더 열심히 해야겠다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
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());
int M = Integer.parseInt(st.nextToken());
int bask[] = new int[N];
for(int i=0; i<N; i++) {
bask[i]=i+1;
}
int idx=0;
for(idx=0; idx<M; idx++) {
st = new StringTokenizer(br.readLine());
int i = Integer.parseInt(st.nextToken())-1;
int j = Integer.parseInt(st.nextToken())-1;
while(i<j) {
int temp=bask[i];
bask[i]=bask[j];
bask[j]=temp;
i++;
j--;
}
}
for(int k:bask) {
System.out.print(k+" ");
}
}
}