cyphen156
백준-1차원 배열 10813 공 바꾸기 본문
이전 문제에서 이어지는 연계문제, 초기에 공이 모두 N번 바구니에 N번 공이 들어가있다고 가정한다.
M번 교환을 시도하는데 두 바구니를 선택하여 서로 공을 교환한다.
제약사항
- 0 < N, M <= 100
- 0 < i <= j <= N
주의 사항
간단한 변수 교체 가능 여부를 물어보는 문제이다. 임시변수를 사용하여 두 바구니에 있는 공들을 바꾼다.
C 풀이
공 바꾸기_10813.c
인덱스를 0부터 쓰려고 반복문 안의 변수 사용이 항상 -1인덱스를 지정한다.
/**
* 백준 1차원 배열 10813 공 바꾸기
* 이전 문제에서 이어지는 연계문제, 초기에 공이 모두 N번 바구니에 N번 공이 들어가있다고 가정한다.
* M번 교환을 시도하는데 두 바구니를 선택하여 서로 공을 교환한다.
*
* 제한사항
*****************************************
* 0 < N, M <= 100 *
* 0 < i <= j <= N *
*****************************************
*
*
*
* 주의
* 간단한 변수 교체 가능 여부를 물어보는 문제이다. 임시변수를 사용하여 두 바구니에 있는 공들을 바꾼다.
*
* 풀이시간 10분
*/
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int N, M, i, j;
scanf("%d%d", &N, &M);
int* arr = (int*)malloc(N * sizeof(int));
// 바구니 초기화
for (int k = 0; k < N; ++k)
{
arr[k] = k+1;
}
// 공 바꾸기
for (int k = 0; k < M; ++k)
{
scanf("%d%d", &i, &j);
int tmp = arr[i-1];
arr[i-1] = arr[j-1];
arr[j-1] = tmp;
}
for (int k = 0; k < N; ++k)
{
printf("%d ", arr[k]);
}
return 0;
}
C++ 풀이
공 바꾸기_10813.cpp
/**
* 백준 1차원 배열 10813 공 바꾸기
* 이전 문제에서 이어지는 연계문제, 초기에 공이 모두 N번 바구니에 N번 공이 들어가있다고 가정한다.
* M번 교환을 시도하는데 두 바구니를 선택하여 서로 공을 교환한다.
*
* 제한사항
*****************************************
* 0 < N, M <= 100 *
* 0 < i <= j <= N *
*****************************************
*
*
*
* 주의
* 간단한 변수 교체 가능 여부를 물어보는 문제이다. 임시변수를 사용하여 두 바구니에 있는 공들을 바꾼다.
*
* 풀이시간 10분
*/
#include <iostream>
#include <vector>
using namespace std;
int main() {
int N, M, i, j;
cin >> N >> M;
vector<int> arr;
int IDX = 0;
// 바구니 초기화
while (1)
{
if (IDX > N)
{
break;
}
arr.push_back(IDX++);
}
for (int k = 0; k < M; ++k)
{
cin >> i >> j;
int tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
for (int k = 1; k <= N; ++k)
{
cout << arr[k] << " ";
}
cout << endl;
return 0;
}
모든 예제 코드의 소스파일은 제 개인 깃허브 레포지토리 에 있습니다.
Workspace/알고리듬 풀이 at main · cyphen156/Workspace · GitHub
Workspace/알고리듬 풀이 at main · cyphen156/Workspace
Studying . Contribute to cyphen156/Workspace development by creating an account on GitHub.
github.com
'컴퓨터공학 > 알고리듬 풀이' 카테고리의 다른 글
백준-1차원 배열 3052 나머지 (0) | 2024.09.14 |
---|---|
백준-1차원 배열 5597 과제 안 내신 분..? (1) | 2024.09.14 |
백준-1차원 배열 10810 공 넣기 (0) | 2024.09.11 |
백준-1차원 배열 2562 최댓값 (0) | 2024.09.10 |
백준-1차원 배열 10818 최소, 최대 (0) | 2024.09.10 |