-
[SWEA] 1210. [S/W 문제해결 기본] 2일차 - Ladder1PS/Java 2021. 3. 9.
X표에 도착 할 수 있는 사다리의 시작점을 구한다.
import java.util.Scanner; public class Ladder { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); for(int tc = 1; tc <= 10; tc++) { int a = scanner.nextInt(); int arr[][] = new int[100][100]; int x = 0; int y = 99; for(int i = 0; i < arr.length; i++) { for(int j = 0; j < arr.length; j++) { arr[i][j] = scanner.nextInt(); if(arr[i][j] == 2) { x = j; } } } while(true) { y--; // 위로 이동 if(y == 0) { break; } if (x - 1 >= 0 && arr[y][x - 1] == 1) { // 왼쪽에 1이 있으면 while (true) { x--; // 왼쪽으로 이동 if (arr[y - 1][x] == 1) { // 줄이 있으면 멈춤 break; } } } else if (x + 1 <= 99 && arr[y][x + 1] == 1) { // 오른쪽에 1이 있으면 while (true) { x++; // 오른쪽으로 이동 if (arr[y - 1][x] == 1) { // 줄이 있으면 멈춤 break; } } } } System.out.println("#"+a+" "+x); } } }
거꾸로 올라간다.
X좌표가 있는 쪽 부터 시작하여 계속 위로 올라가면서 왼쪽 및 오른쪽에 사다리가 있으면 그 방향으로 계속 움직여준다.
'PS > Java' 카테고리의 다른 글
[SWEA] 1873. 상호의 배틀필드 (0) 2021.03.09 [SWEA] 5431. 민석이의 과제 체크하기 (0) 2021.03.09 [SWEA] 1208. [S/W 문제해결 기본] 1일차 - Flatten (0) 2021.03.09 [SWEA] 2001. 파리 퇴치 (0) 2021.03.09 [백준] 17070번: 파이프 옮기기 1 (0) 2021.03.09