반응형

A형 기출 2

[SWEA] 2105. [모의 SW 역량테스트] 디저트 카페 JAVA 문제풀이

풀이 쉽게 생각했지만 생각보다 시간을 많이 들인 문제입니다. 저는 이 문제를 풀이할 때 DFS를 이용하여 풀이하였습니다. 6개의 매개변수 (i, j(현재위치), si와 sj(시작점), 0(방향 0), 1(길이 1))를 이용하였습니다. 항상 직사각형 모양으로 디저트 카페 투어가 이루어지므로 저는 가장 위쪽 모서리를 중심으로 잡고 오른쪽 아래↘ (dir==0), 왼쪽 아래↙ (dir==1), 왼쪽 위↖(dir==2), 오른쪽 위↗(dir==3) 이렇게 기준점에서 시작하여 ↘ ↙ ↖ ↗순서대로 순회한다면 원위치로 돌아올 수 있기 때문입니다. 이를 이용하여 DFS를 순회하게 되는데, 해당 위치의 디저트 번호를 방문했는지 확인하는 disert()배열과 함께 이동하였습니다. 먼저 방향이 0일때, 오른쪽 아래(↘)로..

알고리즘 연습 2020.02.06

[ 삼성 SW 역량 테스트 A형 기출문제 ] 3190. 뱀 _ JAVA 문제풀이

문제 풀이 #1. 먼저 입력받는 Input( ) 부분입니다. 1. 출발한 지 X초가 지나 방향이 전환됩니다. 그 시간초와 방향 L 또는 D를 기록해둘 큐 pq를 만들었습니다. ( 시간초 , 방향 ) 을 Curve 객체로 묶어 pq에 저장해두었습니다. 2. 2차원 배열 map에 뱀의 몸체가 있는 부분을 map[i][j]에 1로, 사과가 있는 위치는 4로, 아무것도 없거나 사과를 먹고 지나간 자리, 또는 뱀이 지나간 자리는 0으로 기록해둘 수 있도록 map 배열을 사용했습니다. Input( ) 에서는 사과의 위치를 입력받아 4 로 저장해주었습니다. 3. 기본 길이 ( length ) 는 1로 , 진행 시간초 ( = Point ) 는 0으로 초기화 해주었습니다. 처음 시작하는 ( 0, 0 ) 위치에는 뱀이 위..

알고리즘 연습 2019.10.19
반응형