[SW Expert Academy] 1210. Ladder1- Java
2019. 8. 9. 16:39ㆍ프로그래밍/알고리즘
반응형
[SWEA] 1210. [S/W 문제해결 기본] 2일차 - Ladder1
문제
문제풀이
전체소스
import java.util.*;
public class Solution
{
public static int ladder[][] = new int[100][100];
public static boolean find = false;
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
for (int tc = 1; tc <= 10; tc++)
{
int tc_cnt = sc.nextInt();
int result = 0;
find = false;
//사다리 배열 생성
for (int row = 0; row < 100; row++)
{
for (int col = 0; col < 100; col++)
{
ladder[row][col] = sc.nextInt();
}
}
//사다리 타기
for (int col = 0; col < 100; col++)
{
if (ladder[0][col] == 1)
{
findX(0, col);
if (find)
{
result = col;
break;
}
}
}
System.out.println("#" + tc_cnt + " " + result);
}
}
public static void findX(int i, int j)
{
boolean visited[][] = new boolean[100][100];
while(i<100)
{
visited[i][j] = true; //지나온 길 표시
if(ladder[i][j] == 2)
{
find = true;
break;
}
if(j-1>=0 && ladder[i][j - 1] == 1 && visited[i][j - 1] == false) //왼쪽으로 이동
{
j--;
}
else if(j+1<100 && ladder[i][j + 1] == 1 && visited[i][j + 1] == false) //오른쪽으로 이동
{
j++;
}
else
{ //아래로 이동
i++;
}
}
}
}
반응형
'프로그래밍 > 알고리즘' 카테고리의 다른 글
[SW Expert Academy] 1213. String- Java (0) | 2019.08.29 |
---|---|
[SW Expert Academy] 1209. Sum- Java (0) | 2019.08.13 |
[SW Expert Academy] 1206. View - Java (0) | 2019.08.07 |
[SW Expert Academy] 1204. 최빈수 구하기 - Java (0) | 2019.08.02 |
[SW Expert Academy] 1208. Flatten - Java (0) | 2019.07.29 |