본문 바로가기

d420

[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 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.
[Java] SWEA 7854번 최약수 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 최약수를 구해보면 한자리의 숫자는 1, 2, 5 두자리의 숫자는 10, 20, 25, 50 세자리이상의 숫자는 100...0, 125...0, 200...0, 250...0, 500...0 이 됩니다. 우선 입력받은 숫자의 자리수 이하의 최약수는 전부 포함되야하므로 작은 자리수의 최약수의 개수를 모두 더해주었습니다. 다음으로 한자리일 경우 각 자리수의 최약수를 저장한 num배열의 1행을, 두자리일 경우 2행을, 세자리 이상일 경우 3행을 이용해서 최약수보다 입력받은 수가 크거나 같으면 해당 최약수는 포함되므로 개수를 +1하여 해결했습니다. 이때, 세자리 이상.. 2021. 3. 11.