티스토리 뷰

바꾸는 부분의 매커니즘만 잘 적용하면 된다.

basket 배열에 1,2,3,4,5,,, 식으로 값을 저장한다. 실제로 바구니를 움직이는게 아니라 index 값을 변경해서 그대로 출력할 것이기 떄문이다.

바꿀 부분을 가리키는 start - 1과 end - 1을 Swap한다. (temp값을 이용해서) 이후 start++ end-- 해준다. 이를 start<end일떄까지만 반복한다.


BufferedStream bs = new BufferedStream(Console.OpenStandardInput()); StreamReader sr = new StreamReader(bs); string[] nm = Console.ReadLine().Split(); int[] basket = new int[int.Parse(nm[0])]; for (int i = 0; i < basket.Length; i++) basket[i] = i + 1; int num = int.Parse(nm[1]); int start; int end; int temp; while (num-- > 0) { nm = Console.ReadLine().Split(); start = int.Parse(nm[0]); end = int.Parse(nm[1]); while(start < end) { temp = basket[start - 1]; basket[start++ - 1] = basket[end - 1]; basket[end-- - 1] = temp; } }



공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/11   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
글 보관함