본문 바로가기

알고리즘/SWEA

(2)
[SWEA] 2105. [모의 SW 역량테스트] 디저트 카페 "나의 아픈손가락이 되어 버린 문제..." [문제 설명] 출제자는 디저트 투어를 할 계획이다. 원 안의 숫자는 디저트의 종류를 의미하고, 카페들 사이에는 대각선으로 이동가능한 길들이 존재한다. 디저트 투어는 한 카페에서 출발하여 대각선 방향으로 움직이고 사각형 모양을 그리며 출발한 카페로 돌아와야 한다. 그 뿐만 아니라, 도중에 먹었던 디저트를 팔았던 카페에 다시 방문해서는 안된다. 추가조건: (1) 하나의 카페에서만 먹으면 안된다. (2) 왔던 길을 다시 되돌아 가면 안된다. '디저트를 가장 많이 먹을 수 있는 경로를 찾고 그 떄의 디저트의 수를 출력하는 프로그램을 작성하시오' [문제 풀이] 1. 백트래킹 백트래킹을 구현 하기에 앞서서 분기 조건을 생각해보자. (1) 이미 먹었던 종류의 디저트가 존재하..
[SWEA] 2383. [모의 SW 역량테스트] 점심 식사시간 "개인적으로 모의SW역량 테스트 문제 중에서 가장 어렵다고 생각한 문제" 알고리즘으로만 놓고 본다면 자료구조를 사용한 시뮬레이션 구현문제 정도이지만, 설계하는 과정에서 자료구조나 구조체 변수를 정확하고 깔끔하게 설계해놓고 시작하지 않으면 시간내에 풀기도 어려울 뿐더러, 디버깅하기도 쉽지 않다. [문제 설명] "문제 풀이에 들어가기 앞서 충분히 문제에 대한 이해를 하고 접근해야한다." 사람들이 계단을 통해 아래 층으로 내려가려고 한다. P는 사람의 위치, S는 계단의 위치를 의미한다. 사람(P)는 계단(S)까지 이동하여야 하며, 계단에 도착 후 계단을 내려간다. 계단까지의 이동 시간: |Py-Sy| + |Px-Sx| 은 맨해튼 거리로 계산한다. 계단을 내려가는 시간은 입구 도착 후 완전히 내려갈 때의 시간..