본문 바로가기

알고리즘/SWEA60

[Java] SWEA 3289번 서로소 집합 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 크루스칼 알고리즘을 사용하여 해결했습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution { public static int N, M; public static int[] parents; public static void main(String[] args) throws IOException { BufferedReader br = new .. 2021. 3. 23.
[Java] SWEA 1251번 하나로 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 Kruskal 알고리즘을 적용하기 위해 우선 만들 수 있는 간선을 전부 만들며 간선 리스트를 만들었습니다. 이때, 문제에서 주어진 조건에 맞추어 가중치를 미리 처리하고 저장을 해야 Kruskal 알고리즘을 사용할 때 정확한 결과가 나올 수 있습니다. 그다음 만든 간선 리스트 edgeList와 Kruskal 알고리즘을 사용해서 MST를 만들어 최소의 환경부담금을 지불할 수 있도록 하여 해결했습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamRea.. 2021. 3. 22.
[Java] SWEA 7699번 수지의 수지 맞는 여행 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 해당 알파벳을 들른적이 있는지에 대해 저장한 boolean타입의 alphabet 배열과 DFS를 사용하여 해결했습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution { public static int R, C, answer; public static char[][] map; public static boolean[] alphabet; .. 2021. 3. 19.
[Java] SWEA 4050번 재관이의 대량 할인 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 오름차순으로 정렬을 한 후, 세개씩 묶어 가장 적은 값은 가격에 포함되지 않으므로 값이 큰 순서부터 가격을 더해가면서 세번째로 오는 값은 그 중 가장 작은 값이되므로 가격에 포함시키지 않게 하여 해결했습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.Collections; import java.util.StringTokenizer; public class .. 2021. 3. 18.
[Java] SWEA 5432번 쇠막대기 자르기 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 스택을 이용해서 문자열에서 현재 문자가 '(' 일 경우 '('를 카운팅 할 인덱스를 따로 두어 해당 인덱스로 스택에 추가했습니다. 다음으로 ')' 일 경우 만약 '('를 카운팅한 인덱스와 스택의 top의 결과가 1이라면 레이저 이므로 현재 스택의 크기가 잘린 쇠막대기의 개수가 됩니다. 다음으로 1이 아니라면 쇠막대기가 끝났으므로 해당 쇠막대기의 끝 부분또한 포함 시켜야 하므로 +1을 해주어 해결했습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStrea.. 2021. 3. 17.
[Java] SWEA 1258번 행렬찾기 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 dfs를 사용하여 문제의 조건을 처리하였습니다. 마지막으로 정답을 출력하기전에 각 사각형의 행과 열이 큰 순으로 만약 같다면 행의 길이가 작은 순이 먼저 정렬되게하여 해결했습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; import j.. 2021. 3. 16.