[백준 Bronze2] 10812 : 바구니 순서 바꾸기

수민이슈·2023년 3월 14일
0

[C++] 코딩테스트

목록 보기
2/116
post-thumbnail

문제 링크

🖊️ 풀이 방법

C++ <algorithm.h>에서 rotate를 지원한다
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
진짜 문제에서 원한 고대로~
begin ~ end를
mid ~ end, begin ~ mid-1로 바꿔주는 함수..
이런 함수가 있어도 있는걸 모르면 하등 쓸모가 없구나

그냥 댁알이 박고 열심히,, 해봤다
개열받음 ㅡㅡ

STL 공부 하자 제 발 요 !@!@

🖊️ 코드

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

vector<int> bucket;

void Show()
{
	for (auto& b : bucket) {
		cout << b << " ";
	}
}


int main()
{
	int N, M;
	int begin, mid, end;

	cin >> N >> M;

	bucket.reserve(N * 2);

	for (int n = 1; n <= N; n++) {
		bucket.emplace_back(n);
	}

	for (int ways = 0; ways < M; ++ways) {
		cin >> begin >> end >> mid;

		// begin - 1부터 end(end-1번쨰)까지, mid-1번쨰가  맨 앞에 오도록
		rotate(bucket.begin() + (begin - 1), bucket.begin() + (mid - 1), bucket.begin() + end);
	}

	Show();
}

0개의 댓글