문제

 

풀이

배열에서 begin부터 end까지 mid를 기준으로하여 회전시켜줘야하므로 rotate 함수를 이용하였다.

#include <iostream>
#include <algorithm>

using namespace std;

int main() {
	int n, m, begin, end ,mid;
	int arr[101];

	cin >> n >> m;

	for (int i = 1; i <= n; i++)
		arr[i] = i;

	for (int i = 0; i < m; i++) {
		cin >> begin >> end >> mid;

		rotate(arr + begin, arr + mid, arr + end + 1);
	}

	for (int i = 1; i <= n; i++)
		cout << arr[i] << " ";

	return 0;
}

'백준 > 심화' 카테고리의 다른 글

1157: 단어 공부 / C++  (0) 2023.03.09
10988: 팰린드롬인지 확인하기 / C++  (0) 2023.03.09
2444: 별 찍기 - 7 / C++  (0) 2023.03.09
3003: 킹, 퀸, 룩, 비숍, 나이트, 폰 / C++  (0) 2023.03.09
25083: 새싹 / C++  (0) 2023.03.09

+ Recent posts