Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
Tags
- 프로그래머스 #배열 회전시키기 #알고리즘 #Java #자바 #코린이 #개발자 #study #취준
- 프로그래머스 #세로 읽기 #알고리즘 #개발자 #코린이 #study #성장 #Java #자바
- 프로그래머스 #열의 길이를 2의 거듭제곱으로 만들기 #Java #자바 #알고리즘 #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #수열과 구간 쿼리 3 #알고리즘 #자바 #Java #코린이 #개발자 #study #공부 #성장
- 백준 #
- 프로그래머스 #푸드 파이트 대회 #알고리즘 #Java #자바 #코린이 #개발자 #study #취준
- 프로그래머스 #날짜 비교하기 #알고리즘 #자바 #Java #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #부분 문자열 이어 붙여 문자열 만들기 #알고리즘 #Java #자바 #코린이 #개발자 #study #취준
- 프로그래머스 #오랜 기간 보호한 동물(1) #알고리즘 #MySQL #DB #쿼리문 #개발자 #study #성장 #코린이
- 프로그래머스 #배열만들기 5 #알고리즘 #study #Java #코린이 #개발자 #성장 #공부
- 프로그래머스 #카테고리 별 도서 판매량 집계하기 #알고리즘 #쿼리문 #MySQL #코린이 #개발자 #study #취준
- 프로그래머스 #문자열 뒤집기 #알고리즘 #Java #자바 #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #조건별로 분류하여 주문상태 출력하기 #MySQL #쿼리문 #알고리즘 #코린이 #개발자 #study #취준
- 코린이 #개발자 #study
- 프로그래머스 #2차원으로 만들기 #알고리즘 #Java #자바 #study #코린이 #개발자 #공부 #성장
- 파이썬 #input() #sys.stdin.readline() #공부 #study
- 프로그래머스 #중복된 문자 제거 #알고리즘 #Java #자바 #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #조건에 맞게 수열 변환하기 1 #알고리즘 #자바 #Java #코린이 #개발자 #study #취준
- 프로그래머스 #등차수열의 특정한 항만 더하기 #알고리즘 #Java #자바 #코린이 #개발자 #study #공부
- 프로그래머스 #수열과 구간 쿼리1 #알고리즘 #자바 #Java #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #1로 만들기 #알고리즘 #자바 #Java #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #조건에 맞는 사용자와 총 거래금액 조회하기 #알고리즘 #Mysql #DB #쿼리문 #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #합성수 찾기 #알고리즘 #Java #자바 #stiudy #코린이 #개발자 #공부 #성장
- 프로그래머스 #할 일 목록 #알고리즘 #Java #자바 #코린이 #개발자 #study #취준
- 프로그래머스 #k의개수 #자바 #Java #알고리즘 #study #공부 #코린이 #개발자 #성장
- 프로그래머스 #문자열이 몇 번 등장하는지 세기 #알고리즘 #Java #자바 #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #문자열 묶기 #알고리즘 #자바 #Java #코린이 #개발자 #study #성장
- 프로그래머스 #소수 만들기 #알고리즘 #Java #자바 #코린이 #개발자 #study #취준
- 프로그래머스 #있었는데요 없었습니다 #DB #MySQL #알고리즘 #쿼리문 #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #특정 문자열로 끝나는 가장 긴 부분 문자열 찾기 #알고리즘 #자바 #Java #코린이 #개발자 #study #공부 #성장
Archives
- Today
- Total
luke
[백준] - 공 바꾸기 (10813) (Java/자바) 본문
문제: https://www.acmicpc.net/problem/10813
문제.

풀이.
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
int[] arr = new int[n+1];
for(int i = 1; i <= n; i++){
arr[i] = i;
}
for(int k = 1; k <= m; k++){
int i = sc.nextInt();
int j = sc.nextInt();
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
for(int i = 1; i <= n; i++){
System.out.print(arr[i] + " ");
}
}
}
이번 문제는 백준 "공 바꾸기" 문제다.
지난 글 풀었던 문제와 비슷해 보이지만 1번 바구니부터 n번 바구니 안에는 각 바구니 번호와 같은 공이 들어 있다.
그리고 입력하는 i번 바구니와 j번 바구니(공 번호) 공을 교환해서 출력하는 거다. 그럼 바로 문제 풀이 해보겠다.
1. n번까지의 바구니와 m번 공을 바꾸려 하는 회수를 입력한다.
2. 배열은 arr[n+1] 생성해 준다 +1을 해준 이유는 0번 인덱스부터 필요한 게 아니라 우리는 1번 바구니부터 필요하기 때문이다.
3. 첫번째 for문에서는 n번만큼 반복해 줘서 arr []에 1~5 값을 넣어준다.
4. 두번째 for문에서는 i, j값을 입력해준다.
temp 변수에 arr[i]값(교환 대상)을 임시로 넣어준다.
arr[i] = arr[j] (교환 대상) j값을 arr[i]에 바꿔준다.
arr[j] = temp temp에 있던 arr[i] 원래 값을 arr[j] 자리에 복사한다. 즉 i값과 j값이 서로 바뀌는 거다.
5. 마지막 for문에서 최종 적으로 값을 출력하면 끝이다.
'알고리즘문제 > 백준 문제(Java)' 카테고리의 다른 글
| [백준] - 피보나치 수 (2747) (Java/자바) (0) | 2025.09.28 |
|---|---|
| [백준] - 바구니 뒤집기 (10811) (Java/자바) (1) | 2025.08.03 |
| [백준] - 공 넣기 (10810) (Java/자바) (6) | 2025.07.27 |
| [백준] - 킹, 퀸, 룩, 비숍, 나이트, 폰 (3003) (Java/자바) (0) | 2025.07.24 |
| [백준] - 평균은 넘겠지 (4344) (Java/자바) (0) | 2025.07.23 |