๋ฌธ์
๋ํ์ด๋ ๋ฐ๊ตฌ๋๋ฅผ ์ด N๊ฐ ๊ฐ์ง๊ณ ์๊ณ , ๊ฐ๊ฐ์ ๋ฐ๊ตฌ๋์๋ 1๋ฒ๋ถํฐ N๋ฒ๊น์ง ๋ฒํธ๊ฐ ์์๋๋ก ์ ํ์ ธ ์๋ค. ๋ฐ๊ตฌ๋๋ ์ผ๋ ฌ๋ก ๋์ฌ์ ธ ์๊ณ , ๊ฐ์ฅ ์ผ์ชฝ ๋ฐ๊ตฌ๋๋ฅผ 1๋ฒ์งธ ๋ฐ๊ตฌ๋, ๊ทธ ๋ค์ ๋ฐ๊ตฌ๋๋ฅผ 2๋ฒ์งธ ๋ฐ๊ตฌ๋, ..., ๊ฐ์ฅ ์ค๋ฅธ์ชฝ ๋ฐ๊ตฌ๋๋ฅผ N๋ฒ์งธ ๋ฐ๊ตฌ๋๋ผ๊ณ ๋ถ๋ฅธ๋ค.
๋ํ์ด๋ ์์ผ๋ก M๋ฒ ๋ฐ๊ตฌ๋์ ์์๋ฅผ ์ญ์์ผ๋ก ๋ง๋ค๋ ค๊ณ ํ๋ค. ๋ํ์ด๋ ํ ๋ฒ ์์๋ฅผ ์ญ์์ผ๋ก ๋ฐ๊ฟ ๋, ์์๋ฅผ ์ญ์์ผ๋ก ๋ง๋ค ๋ฒ์๋ฅผ ์ ํ๊ณ , ๊ทธ ๋ฒ์์ ๋ค์ด์๋ ๋ฐ๊ตฌ๋์ ์์๋ฅผ ์ญ์์ผ๋ก ๋ง๋ ๋ค.
๋ฐ๊ตฌ๋์ ์์๋ฅผ ์ด๋ป๊ฒ ๋ฐ๊ฟ์ง ์ฃผ์ด์ก์ ๋, M๋ฒ ๋ฐ๊ตฌ๋์ ์์๋ฅผ ์ญ์์ผ๋ก ๋ง๋ ๋ค์, ๋ฐ๊ตฌ๋์ ์ ํ์๋ ๋ฒํธ๋ฅผ ๊ฐ์ฅ ์ผ์ชฝ ๋ฐ๊ตฌ๋๋ถํฐ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ N (1 ≤ N ≤ 100)๊ณผ M (1 ≤ M ≤ 100)์ด ์ฃผ์ด์ง๋ค.
๋์งธ ์ค๋ถํฐ M๊ฐ์ ์ค์๋ ๋ฐ๊ตฌ๋์ ์์๋ฅผ ์ญ์์ผ๋ก ๋ง๋๋ ๋ฐฉ๋ฒ์ด ์ฃผ์ด์ง๋ค. ๋ฐฉ๋ฒ์ i j๋ก ๋ํ๋ด๊ณ , ์ผ์ชฝ์ผ๋ก๋ถํฐ i๋ฒ์งธ ๋ฐ๊ตฌ๋๋ถํฐ j๋ฒ์งธ ๋ฐ๊ตฌ๋์ ์์๋ฅผ ์ญ์์ผ๋ก ๋ง๋ ๋ค๋ ๋ป์ด๋ค. (1 ≤ i ≤ j ≤ N)
๋ํ์ด๋ ์
๋ ฅ์ผ๋ก ์ฃผ์ด์ง ์์๋๋ก ๋ฐ๊ตฌ๋์ ์์๋ฅผ ๋ฐ๊พผ๋ค.
์ถ๋ ฅ
๋ชจ๋ ์์๋ฅผ ๋ฐ๊พผ ๋ค์์, ๊ฐ์ฅ ์ผ์ชฝ์ ์๋ ๋ฐ๊ตฌ๋๋ถํฐ ๋ฐ๊ตฌ๋์ ์ ํ์๋ ์์๋ฅผ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด ์ถ๋ ฅํ๋ค.
ํ์ด
// ํ์ด : https://whkakrkr.tistory.com
#include <iostream>
#include <vector>
using namespace std;
vector<int> solution(vector<int>basket, vector<int>&input1, vector<int>&input2) {
int m = input1.size();
for(int k=0; k<m; k++) {
int i = input1[k];
int j = input2[k];
while(i<j) {
int tmp = basket[i];
basket[i] = basket[j];
basket[j] = tmp;
i++;
j--;
}
}
return basket;
}
int main() {
ios_base::sync_with_stdio(false);
cout.tie(NULL);
cin.tie(NULL);
// input
int n, m;
cin >> n >> m;
vector<int>basket(n+1);
for(int i=1; i<=n; i++) {
basket[i] = i;
}
vector<int>input1(m);
vector<int>input2(m);
for(int i=0; i<m; i++) {
cin >> input1[i] >> input2[i];
}
// solution
vector<int> answer = solution(basket, input1, input2);
// output
for(int i=1; i<=n; i++) {
cout << answer[i] << " ";
}
return 0;
}
'๐ Cpp > [BOJ] ๋จ๊ณ๋ณ๋ก ํ์ด๋ณด๊ธฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ][C++] ๋ฐฑ์ค 10988๋ฒ: ํฐ๋ฆฐ๋๋กฌ์ธ์ง ํ์ธํ๊ธฐ (Bronze III) (0) | 2024.12.24 |
---|---|
[BOJ][C++] ๋ฐฑ์ค 2444๋ฒ: ๋ณ ์ฐ๊ธฐ - 7 (Bronze III) (1) | 2024.12.23 |
[BOJ][C++] ๋ฐฑ์ค 10813๋ฒ: ๊ณต ๋ฐ๊พธ๊ธฐ (Bronze II) (0) | 2024.12.16 |
[BOJ][C++] ๋ฐฑ์ค 10810๋ฒ: ๊ณต ๋ฃ๊ธฐ (Bronze III) (0) | 2024.11.29 |
[BOJ][C++] ๋ฐฑ์ค 1011๋ฒ : Fly me to the Alpha Centauri (0) | 2021.11.12 |