본문 바로가기

알고리즘219

[Java] SWEA 1227번 미로2 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 (1, 1)이 시작 지점이므로 (1, 1)부터 DFS를 시작해서 (y, x)가 3인 지점이 있다면 도착지점까지 갈 수 있으므로 answer를 true로 바꾸어 1을 출력하게하여 해결했습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Solution { public static char[][] maze = new char[100][100]; public static boolean answer; public s.. 2021. 2. 23.
[Java] SWEA 1232번 사칙연산 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 input 값이 완전 이진 트리로 주어지는것이 아니기 때문에 Node 클래스를 만들어 왼쪽 자식과 오른쪽 자식의 위치를 저장하여 해결했습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; class Node { public String op; public double num; public int left; public int right; public Node(String o.. 2021. 2. 22.
[Python] 2016년 코딩테스트 연습 - 2016년 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까 programmers.co.kr 풀이 총 일수를 구하고 일주일은 7일 이므로 총 일수에 7을 나머지연산하여 해결했습니다. 코드 def solution(a, b): answer = '' month = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] day = ["THU", "FRI", "SAT", "SUN", "MON", "TUE", "WED"] total_day = b for i in range(0, a - 1): .. 2021. 2. 21.
[Python] K번째수 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr 풀이 리스트의 slice를 이용하여 commands에 주어진 i에서 j까지 array를 잘라 새로운 리스트를 만들고 리스트의 sort()를 사용하여 새로운 리스트에서 오름차순으로 정렬된 k번째 수를 구하여 해결했습니다. 코드 def solution(array, commands): answer = [] for command in commands: slice_arr = array[command[0] - 1:command[1]] slice_arr.sort() answer.append(slice_arr[command[2] - 1]) r.. 2021. 2. 20.
[Java] SWEA 1233번 사칙연산 유효성 검사 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 배열에서 해당 노드에 자식노드가 있다면 인덱스는 전체 배열크기인 N의 절반보다 작은 수 즉, N / 2보다 작거나 같아야 하고 반대로 리프노드인 경우는 N / 2보다 커야합니다. 또한, 리프노드에는 숫자만 들어올 수 있고 리프노드가 아닐때만 연산자가 들어갈 수 있으므로 이를 이용하여 해결하였습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solu.. 2021. 2. 19.
[Java] SWEA 1224번 계산기3 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 계산기 1, 2 문제와 동일하게 스택을 사용하고 괄호가 추가되었기 때문에 스택에 괄호를 넣을 때는 무조건 들어가야 하므로 가장 높은 우선순위를 갖도록 하였고 괄호가 스택안에 있을 때는 다른 연산자들이 괄호 위로 들어가야 하므로 스택 안에서는 가장 낮은 우선순위를 갖게했습니다. ')' 연산자를 만나면 스택의 '(' 연산자를 만날 때 까지 후위표기식에 추가하고 마지막으로 '(' 연산자를 스택에서 제거하게 하여 후위 계산식을 만들어 해결하였습니다. 코드 import java.io.BufferedReader; import java.io.IOException; imp.. 2021. 2. 18.