본문 바로가기

SWEA/삼성SW역량테스트 C++

(19)
[SWEA] 홈 방범 서비스 [문제] https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5V61LqAf8DFAWu SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이] 1) 방범 영역이 퍼져나가는 모양이 BFS같아서 BFS로 접근함. 2) m = 한 집에서 지불하는 비용 전체 집의 수 * m 을 max_fee라고 한다면 운영 총 비용(k*k + (k-1)*(k-1))은 max_fee를 초과하면 안된다. 3) k의 크기는 최대 n 4) k의 크기마다 운영비용은 고정되어있기 때문에 실행시간을 줄이기 위해 미리 구해둔다. 5) 기준점이 바뀔 때..
[SWEA] 등산로 조성 [문제] https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PoOKKAPIDFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이] 1) 가장 높은 봉우리가 시작점이다. 2) 높은 지형에서 낮은 지형으로 가로 또는 세로 방향으로 연결이 되어야 한다. 3) 긴 등산로를 만들기 위해 딱 한 곳을 정해서 최대 K 깊이만큼 지형을 깎는 공사를 할 수 있다. * 최대 K 라는 것을 알아야 한다. 꼭 K를 깎지 않아도 된다. * dfs 사용 (깊이 우선 탐색) * 시간 복잡도 O(n^2) * 백트래킹 사용 * fl..
[SWEA] 특이한 자석 [문제] https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWIeV9sKkcoDFAVH SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이] 1. 자석의 맞닿아있는 극점이 다를 경우에 각자 반대 방향으로 회전한다. (서로 극점이 맞물려있는지 확인하는 함수가 필요) 2. 정해진 방향으로 한 칸씩 극점들을 옮긴다. (시계방향의 경우 마지막 원소가 첫번째로 간다. / 반시계방향인경우에 첫번째 원소가 마지막 원소로 간다. ) 3. 현재 자석을 기준으로 왼쪽에 위치한 자석과 오른쪽에 위치한 자석을 재귀를 사용하여 연쇄 작..