No Rules Rules

바구니 뒤집기 (feat. 백준, 10811번) 본문

생활/코테

바구니 뒤집기 (feat. 백준, 10811번)

개발하는 완두콩 2023. 2. 22. 15:26
728x90
반응형

바구니 뒤집기
https://www.acmicpc.net/problem/10811

 

10811번: 바구니 뒤집기

도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 순서대로 적혀져 있다. 바구니는 일렬로 놓여져 있고, 가장 왼쪽 바구니를 1번째 바구니, 그 다음 바구니를 2

www.acmicpc.net

 

// woohyeon.kim
// kim519620.tistory.com
#include <iostream>
#include <algorithm>
using namespace std;
int arr[101];
void func(register int i, register int j){
    if(i < j)
        swap(arr[i], arr[j]), func(i + 1, j - 1);
}
int main(){
    ios::sync_with_stdio(false), cin.tie(NULL);
    register int N, M;
    cin >> N >> M;
    for(register int n = 1; n <= N; ++n)
        arr[n] = n;
    for(register int m = 0, a, b; m < M; ++m)
        cin >> a >> b, func(a, b);
    for(register int n = 1; n <= N; ++n)
        cout << arr[n] << " ";
	return 0;
}
// *&)*@*

 

반응형

i - j 범위 사이의 값을 역순으로 변경해야 합니다. (범위가 1-5 라면 1/5를 교환하고 2/4를 교환해야 합니다.)

저는 c++의 algorithm 에 제공되는 swap을 사용했지만 sort(beg_iter, end_iter, greater<>) 를 사용해도 됩니다.

728x90
반응형

'생활 > 코테' 카테고리의 다른 글

너의 평점은 (feat. 백준, 25206번)  (0) 2023.02.22
별 찍기 - 7 (feat. 백준, 2444번)  (0) 2023.02.22
공 바꾸기 (feat. 백준, 10813번)  (0) 2023.02.22
빵집 (feat. 백준, 3109번)  (0) 2023.02.22
월드컵 (feat. 백준, 6987번)  (0) 2023.02.22
Comments