728x90 반응형 시뮬레이션3 [Python] 고대 문명 유적 탐사: 삼성SW역량테스트 2024 상반기 오전 1번 고대 문명 유적 탐사: 삼성SW역량테스트 2024 상반기 오전 1번Information자료구조: 2차원 배열, 큐(queue)알고리즘: BFS, 행렬 돌리기 테크닉, 정렬Setup(5, 5) 행렬을 `box`라고 이름 지었다. 전역변수로 선언함.(1) 탐사 진행: `(row, col)`을 기준으로 2차원 (3, 3) 배열을 90도 회전시킬 함수가 필요할 것 같다. 수험자 배려인지 행렬의 가장자리에서는 회전을 하지 않는다. 그러니가 (4번의 회전) x (9개의 회전축) = 36번 탐색하면 된다.(2) 유물 획득: `box[i][j]`마다 같은 숫자가 있는지 BFS로 탐색한다. 그중에서 조각이 3개 이상인 경우에만 유물을 획득한다. BFS 함수 마지막에 유물 조각의 개수도 담고 있어야 할 것 같다. 그리고 .. 2024. 10. 13. [Python] 코드트리 투어: 삼성SW역량테스트 2024 상반기 오전 2번 코드트리 투어: 삼성SW역량테스트 2024 상반기 오전 2번 Information자료구조: 그래프, 힙(우선순위 큐)알고리즘: 다익스트라Query이 문제는 다양한 쿼리가 인풋으로 들어온다.그래프를 만드는 쿼리 빼고 4개의 쿼리에 대해 처리해야한다.(1) 랜드 건설: 가중치 그래프를 만드는 쿼리이다. 맨 처음 인풋으로만 들어온다.(2) 여행 상품 생성: 현재 출발지 기준으로 매출, 도착지 정보를 바탕으로 수익을 계산한다.(3) 여행 상품 취소: 특정 상품 id가 (2)로 생성되어있다면, 취소한다.(4) 최적 상품 판매: 수익이 가장 큰 상품을 판매하고, 그러한 상품이 없다면 -1을 출력(5) 상품 출발지 변경: 출발지를 새로운 출발지로 변경한다. (2)에서 생성된 정보 업데이트가 필요하다.Setup필요한 .. 2024. 9. 21. [Python] 루돌프의 반란: 삼성SW역량테스트 2023 하반기 오후 1번 루돌프의 반란: 삼성SW역량테스트 2023 하반기, 오후 1번 해설/힌트 없이 채점 테스트 케이스만 보고 3시간 30분 걸렸다.진짜 시뮬레이션 구현이 복잡했다특히 산타끼리의 '상호작용'을 for-loop으로 구했다가 while로 고쳤다 오답이 나는 케이스1. 루돌프가 움직일 때산타를 찾아가는 우선순위가 제대로 되어있는가?산타와 충돌했을 때, 산타가 밀리는 방향이 바뀌진 않았는가? (바뀌면 안된다)2. 산타(들)가 움직일 때상우하좌 순서를 지켰는가?루돌프와 가까워지지 않으면 정지하는가?루돌프와 충돌 후 다른 산타들과 '상호작용'이 제대로 구현이 되었는가?루돌프와 충돌 후 제자리로 돌아올 때에도 상호작용을 하고 있는가? (하면 안된다)상호작용이 끝난 후, 올바르게 위치가 업데이트 되었는가? (덮어쓰기 순서 .. 2024. 9. 20. 이전 1 다음 728x90 반응형