자바 백준 13698번
브론즈 3
https://www.acmicpc.net/problem/13698
13698번: Hawk eyes
첫째 줄에 재열이가 컵을 섞는 순서가 주어진다. 이 순서는 위 그림에 있는 A, B, C, D, E, F 중 하나이다. 재열이는 컵을 최대 200번 섞는다.
www.acmicpc.net
문제 보기

분류: 구현, 시뮬레이션
문제 풀기
입력되는 문자를 char array 로 나누어 입력받는다.
컵의 번호인 index 를 맞추기 위해 빈칸이 4 개가 아닌 5 개짜리 빈 array 를 생성하고 index 1 에 숫자 1 을 넣고, index 4 에 숫자 9 를 넣는다.
for each 를 사용하여 입력 문자의 알파벳 하나 하나를 빼내고, 조건에 따른 자리바꿈을 시행한다. index 편의를 위해 5 개짜리 arrayBall 에서 index 0 은 사용하지 않는다.
모든 알파벳에 해당하는 자리바꿈이 끝나고 나면 작은공을 지칭하는 1 의 위치인 index 를 출력하고, 다음으로 큰공을 지칭하는 숫자 9 의 위치를 출력한다.
코드 보기
import java.util.*; public class Main { public static void main(String args[]) { Scanner sc = new Scanner(System.in); char[] charSwap = sc.next().toCharArray(); int[] arrayBall = new int[4 + 1]; arrayBall[1] = 1; arrayBall[4] = 9; System.out.println(Arrays.toString(arrayBall)); // TEST PRINT for (char c : charSwap) { if ((c + "").equals("A")) { int temp = arrayBall[1]; arrayBall[1] = arrayBall[2]; arrayBall[2] = temp; } else if ((c + "").equals("B")) { int temp = arrayBall[1]; arrayBall[1] = arrayBall[3]; arrayBall[3] = temp; } else if ((c + "").equals("C")) { int temp = arrayBall[1]; arrayBall[1] = arrayBall[4]; arrayBall[4] = temp; } else if ((c + "").equals("D")) { int temp = arrayBall[2]; arrayBall[2] = arrayBall[3]; arrayBall[3] = temp; } else if ((c + "").equals("E")) { int temp = arrayBall[2]; arrayBall[2] = arrayBall[4]; arrayBall[4] = temp; } else if ((c + "").equals("F")) { int temp = arrayBall[3]; arrayBall[3] = arrayBall[4]; arrayBall[4] = temp; } } System.out.println(Arrays.toString(arrayBall)); // TEST PRINT for (int i = 0; i < 5; i++) { if (arrayBall[i] == 1) { System.out.println(i); } } for (int i = 0; i < 5; i++) { if (arrayBall[i] == 9) { System.out.print(i); } } } } /* AFD [0, 1, 0, 0, 9] [0, 0, 9, 1, 0] 3 2 */
'공부하기 > 백준' 카테고리의 다른 글
[Java] 백준 풀기 12778 - CTP공국으로 이민 가자 (0) | 2023.04.15 |
---|---|
[Java] 백준 풀기 2975 - Transactions (0) | 2023.04.14 |
[Java] 백준 풀기 20976 - 2 番目に大きい整数 (The Second Largest Integer) (0) | 2023.04.12 |
[Java] 백준 풀기 10480 - Oddities (0) | 2023.04.11 |
[Java] 백준 풀기 10698 - Ahmed Aly (1) | 2023.04.10 |