본문 바로가기

분류 전체보기135

Max Array Sum 풀이 Java Max Array Sum | HackerRank Find the maximum sum of elements in an array. www.hackerrank.com DP문제 subset of non-adjacent elements : 인접하지 않은 요소들의 집합 arr = {-2, 1, 3, -4, 5} dp = new int[5] 시작하기 전에, dp[0] = -2 (제일 첫번째 수만 초기화) dp[1] = max(n,d(n-1)) = max(-2,1) = 1 case 1 : N번째 수를 포함하는 경우 n : n 번째 값, d(n) : n 까지의 합 max(n,d(n-2)+n) * d(n-2)인 이유는 인접하면 안되기 때문 case 2 : N번째 수를 포함하지 않는 경우 d(n-1) ---- d[n] .. 2022. 7. 9.
Binary Search Tree : Lowest Common Ancestor 풀이 Java LCA : LCA알고리즘은 트리에서 두 개의 노드를 선택했을 때 최소 공통 조상을 구해주는 알고리즘이다. LCA는 두 노드가 처음으로 갈라지는 지점이다. * 본인 포함 * 자기 자신도 자신의 조상이 될 수 있음 이 문제는 LCA에 대한 개념과 재귀에 대해서 알면 쉽게 풀 수 있지만 개념을 이해하지 못하면 산으로 갈 수 있다. DFS 재귀로 풀기 import java.util.*; import java.io.*; class Node { Node left; Node right; int data; Node(int data) { this.data = data; left = null; right = null; } } class LCA_BST { /* * class Node int data; Node left; N.. 2022. 7. 9.
2021 KAKAO BLIND 코딩테스트 메뉴 리뉴얼 풀이 Java https://school.programmers.co.kr/learn/courses/30/lessons/72411 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 포인트 : 조합 사용, 정렬 import java.util.*; public class Menu { public static void main(String[] args) { Solution sol = new Solution(); String[] orders = { "ABCFG", "AC", "CDE", "ACDE", "BCFG", "ACDEH" }; int[] course = { 2, 3, 4 }.. 2022. 7. 7.
한 번쯤은 들어봤을 AD, LDAP에 대한 정리 서론 많은 기업에서 인증을 위해 AD(Active Directory)를 사용하는 것으로 알고 있다. 지금 근무 중인 회사도 AD를 사용해서 한 번은 정리해야겠다고 생각만 하고 있었는데 Springboot-LDAP 연동 개발 중 문제가 있어서 해결방안을 찾는 겸 정리를 해보려고 한다. Active Directory(AD)? 전화번호부의 개념(그룹 내 연락처 정보에 액세스 하기 위한 디렉토리) AD는 Microsoft가 Windows 전용으로 개발한 디렉토리 서비스 제품으로 공유 네트워크상의 Object(데스크탑 및 노트북 컴퓨터, 디바이스, 프린터, 서비스, 사용자 그룹 등)를 정리하고 관리하기 위한 인터페이스를 제공한다. 여기에 포함된 사용자 또는 사용자 그룹에는 디렉토리 내의 정보 및 개체에 액세스 할.. 2022. 4. 4.
[분할 정복] 쿼드 트리 뒤집기(convert quad tree) 입력 쿼드 트리로 압축한 그림이 주어진다. 모든 문자열의 길이는 1,000 이하이며, 원본 그림의 크기는 2^20*2^20을 넘지 않는다. 예제 입력 xbwwb xbwxwbbwb 예제 출력 xwbbw xxbwwbbbw 코드 포인트는 위 그림! 첫 번째 그림을 뒤집는 과정을 1) 숫자를 각자 뒤집고 2) 아래와 위를 뒤집는 걸로 생각한다. 전체가 검은색이나 흰 색인 그림은 뒤집어봤자 다를 게 없기 때문에 b, w는 그대로 리턴한다. CharacterIterator를 사용하는 이유도 잘 생각해 보면 좋을듯 import java.text.CharacterIterator; public class QuadTree { String reverse(CharacterIterator it) { char head = it... 2022. 3. 17.
Codility : GenomicRangeQuery 풀이 문제 GenomicRangeQuery coding task - Learn to Code - Codility Find the minimal nucleotide from a range of sequence DNA. app.codility.com A DNA sequence can be represented as a string consisting of the letters A, C, G and T, which correspond to the types of successive nucleotides in the sequence. Each nucleotide has an impact factor, which is an integer. Nucleotides of types A, C, G and T have impa.. 2022. 3. 5.
반응형