본문 바로가기
My Image
반응형

Algorithm/BackJoon25

[삼성전자] 백준 - 톱니바퀴(Gear) BackJoon #14891 - 톱니바퀴(Gear) https://www.acmicpc.net/problem/14891 삼성전자 2017 하반기 SW직군 역량테스트 중 기출문제 1번을 풀어봤습니다. 흠...저는 대략 2시간 걸린 것 같습니다. 코드가 좀 지저분한데 리팩토링 좀 해야겠네요.. package SamsungTest; import java.util.ArrayList; import java.util.Arrays; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner; public class Gear { static int[][] command; static ArrayList list; public static v.. 2017. 11. 7.
[TREE] 백준 1991 트리 순회(Tree Order) BackJoon #1991 - 트리순회(Tree Order) https://www.acmicpc.net/problem/1991 이번 시간은 트리 순회에 대해서 알아보겠습니다. 트리 순회는 3가지 방법으로 트리를 순회할 수 있습니다. 각 순회 방법에 따라 루트 탐색 순서가 어떤지 파악하면, 쉽게 암기 할 수 있습니다. 다음과 같은 트리가 있다고 가정하면, 각 순회 방법에 따라 탐색 순서가 바뀝니다. 1. 전위 순회 루트 - > Left -> Right // ABDCEFG 2. 중위 순회 Left -> 루트 -> Right // DBAECFG 3. 후위 순회 Left -> Right - > 루트 // DBEGFCA 이제 재귀함수 호출을 통해 전위, 중위, 후위 순회를 구현해보겠습니다. 입력 값이 알파벳이기 .. 2017. 10. 30.
[DP] 백준 2579 계단오르기(Climbing Stairs) BackJoon #2579 - 계단오르기(Climbing Stairs) https://www.acmicpc.net/problem/2579 대표적인 DP문제입니다. DP[N] 을 N개 계단을 계단오르기 규칙에 의해 얻은 가장 큰 점수라고 하겠습니다.N번째 계단은 무조건 밟아야 하기 때문에 N번째 계단이 1번 연속인 경우! N번째 계단이 2번연속인 경우! 이 2가지 경우를 나누어서 생각해 보겠습니다. 저는 1차원 배열로 DP를 잡고 풀었습니다. A 배열은 주어진 계단 점수를 담고 있습니다. N번째 계단이 1번 연속인 경우 N-1번째 계단은 필요 없고, N-2번째 계단의 총점을 합쳐야 합니다. 따라서.. DP[N] = DP[N-2] + A[N] N번째 계단이 2번 연속인 경우 N-1번째 계단은 밟아야 하고, .. 2017. 10. 26.
[DP] 백준 1912 연속합 (Continuous Sum) BackJoon #1912 - 연속합 (Continuous Sum) https://www.acmicpc.net/problem/1912 대표적인 DP문제입니다. DP[N] 을 N개 자리수에 연속합을 한 것들 중에서 가장 큰 연속합 이라고 하겠습니다.N자리에 해당하는 숫자가 이전 연속합에 속하는 경우와 속하지 않고 새롭게 연속합을 시작하는 경우 2가지로 나누어서 생각해 볼 수 있습니다. ARR 배열은 주어진 수열을 담고 있습니다. N자리에 숫자를 연속합에 합치면, 이득인 경우 DP[N] = DP[N-1] + ARR[N] N자리에 숫자를 연속합에 합치면, 이득을 얻지 못하는 경우 (새롭게 다시 연속합을 시작해야함) DP[N] = ARR[N] 그렇다면 이 2가지 경우를 분기 처리해야 하는데 어떻게 할까요???우.. 2017. 10. 26.
반응형