Algorithm/SWEA(5)
-
2112번 : 보호 필름 [Java]
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5V1SYKAaUDFAWu SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 해결 방식 고민 3진 트리를 사용하는 방법과 조합을 사용하는 방법 2가지가 있다. 다들 3진트리를 많이 사용했던데,, 3진 트리를 사용한 코드가 훨씬 깔끔했지만 개인적으로는 조합을 사용해서 푼 게 더 이해가 잘됐다. 해결 방안 _1 : 3진트리 1. dfs를 사용 1-1. 아무것도 투입하지 않은 경우 1-2. A를 투입한 경우 1-3. B를 투입할 경우 2. 모든 경우를 확인하면 배열을 돌려놓는다...
2021.04.23 -
1267번 : 작업순서 [Java]
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV18TrIqIwUCFAZN SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 해결 방안 위상 정렬을 사용한다. 1. 인접행렬을 위한 배열과 진입 차수 저장을 위한 배열을 만들어 입력받는다. 2. 큐에 진입차수가 0인 노드들을 저장한다. 3. 큐가 빌때까지 4. 노드를 꺼내 출력 후, 그 노드에 연결된 노드들의 진입 차수를 하나 줄이고 5. 진입 차수가 0이 된다면 큐에 넣는다. 전체 코드 import java.util.LinkedList; import java.util.Qu..
2021.04.23 -
5215번 : 햄버거 다이어트 [Java]
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWT-lPB6dHUDFAVT SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 해결 방식 고민 1. 재료들을 고를 수 있는 모든 부분집합을 고른 후, 각 부분집합이 완성될 때마다 칼로리의 합과 맛에 대한 점수의 합을 확인. 2. 함수에서 맛 점수 합과 칼로리 합을 가지고 다니며 확인. => 2번 방식은 모든 경우를 확인하지 않아도 되기 때문에 시간 절약 가능 해결 방안 배열에서의 순서 확인을 위한 idx와 맛 점수 합을 위한 sumt, 칼로리 합을 위한 sumc를 사용. ha..
2021.03.16 -
1952번 : 수영장 [Java]
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PpFQaAQMDFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 해결방안 DFS 혹은 DP로 풀 수 있는 문제였다. 코드가 더 간단한 것 같아 DP 선택. 1월은 (1월 이용계획 * 1일 이용권 가격)과 (1달 이용권 가격) 중 적은 비용을 선택 2월은 (1월까지의 가격 + 2월 이용계획 * 1일 이용권 가격)과 (1월까지의 가격 + 1달 이용권 가격) 중 적은 비용을 선택 3월~12월은 (전 달까지의 가격 + 해당 월 이용계획 * 1일 이용권 가격), (전 달..
2021.03.15 -
1949번 : 등산로 조성 [Java]
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PoOKKAPIDFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 해결 방안 1. 가장 높은 봉우리를 찾고, 가장 높은 봉우리에서 각각 탐색을 시작한다. 2. 현재 칸에서 인접한 낮은 칸으로 이동한다. 3. 낮지 않은 칸이라면, 높이 차이가 최대 공사 가능 깊이보다 작고 깎을 수 있는 상태라면 이동한다. 4. 최대 등산로 길이를 비교하며 저장한다. 주의할 점 1. 이미 등산로에 포함 된 칸은 깎으면 안된다. -> 따로 배열을 통해 관리 2. 탐색이 끝난후에는 원래..
2021.03.14