Skip to content

Latest commit

 

History

History
188 lines (185 loc) · 80.6 KB

README.md

File metadata and controls

188 lines (185 loc) · 80.6 KB

study-algorithm

Programmers Algorithm

해시

완주하지 못한 선수, 전화번호 목록, 위장, 베스트앨범, 1차 뉴스 클러스터링, 오픈채팅방, 튜플, 보석 쇼핑, 주차 요금 계산, 스타 수열

스택/큐

기능개발, 프린터, 다리를 지나는 트럭, 주식가격, 괄호 변환, 캐시, n진수 게임, 괄호 회전하기, 짝지어 제거하기, 110 옮기기, 올바른 괄호

이진 트리

길 찾기 게임, 다단계 칫솔 판매

더 맵게, 디스크 컨트롤러, 이중우선순위큐, 무지의 먹방 라이브

정렬

K번째수, 가장 큰 수, H-Index, 파일명 정렬, 최솟값 만들기

완전탐색

모의고사, 소수 찾기, 카펫

탐욕법

체육복, 조이스틱, 큰 수 만들기, 구명보트, 섬 연결하기, 단속카메라, 숫자 게임

동적계획법

N으로 표현, 정수 삼각형, 등굣길, 도둑질, GPS, 보행자 천국, 2 x n 타일링, 가장 큰 정사각형 찾기, 거스름돈, 땅따먹기, 멀리 뛰기, 스티커 모으기(2), 단어 퍼즐, 사칙연산

소수

k진수에서 소수 개수 구하기

유클리드

N개의 최소공배수

for문

가장 긴 팰린드롬, 행렬의 곱셈

Trie

가사 검색

깊이/너비 우선 탐색

거리두기 확인하기, 리틀 프렌즈 사천성, 수식 최대화, 불량 사용자, 후보키, 경주로 건설, 사라지는 발판, 양과 늑대, 양궁대회, 게임 맵 최단거리, 단체사진 찍기, 카카오프렌즈 컬러링북, 5주차_모음사전, N-Queen, 모두 0으로 만들기, 줄 서는 방법, 쿼드압축 후 개수 세기, 하노이의 탑, 4단 고음, 지형이동, 동굴 탐험, 올바른 괄호의 갯수, 호텔 방 배정, 타겟 넘버, 네트워크, 단어 변환, 여행경로, 괄호 변환, 메뉴 리뉴얼, 모두 0으로 만들기, 블록 이동하기, 순위 검색, 아이템 줍기, 전력망을 둘로 나누기, 카드 짝 맞추기, 피로도

이분탐색

입국심사, 징검다리, 외벽 점검, 징검다리 건너기, 금과 은 운반하기, 선입 선출 스케줄링

그래프

가장 먼 노드, 순위

다익스트라

합승 택시 요금, 배달, 미로 탈출

Two Pointer

광고 삽입, 풍선 터트리기

문자열

JadenCase 문자열 만들기

Prefix Sum

캠핑

기타(규칙 찾기)

로또의 최고 순위와 최저 순위, 신규 아이디 추천, 문자열 압축, 셔틀버스, 자물쇠와 열쇠, 표 편집, 기둥과 보 설치, 매칭 점수, 프렌즈4블록, 방금그곡, 압축, 파괴되지 않은 건물, 124 나라의 숫자, 멀쩡한 사각형, 빛의 경로 사이클, 예상 대진표, 행렬 테두리 회전하기, 2개 이하로 다른 비트, n^2 배열 자르기, 공 이동 시뮬레이션, 교점에 별 만들기, 기지국 설치, 다음 큰 숫자, 방문 길이, 삼각 달팽이, 숫자의 표현, 스킬트리, 야근 지수, 영어 끝말잇기, 이진 변환 반복하기, 점프와 순간 이동, 최고의 집합, 최댓값과 최솟값

BaekJun Algorithm

수학

숫자의 합, 달팽이는 올라가고 싶다, 손익분기점, 소수 찾기, 소수 구하기, 소인수분해, 베르트랑 공준, 골드바흐의 추측, 직사각형에서 탈출, 직각삼각형, 택시 기하학, 네 번째 점, 터렛, 설탕 배달

정수론 및 조합론

배수와 약수, 약수, 최대공약수와 최소공배수, 최소공배수, 검문, , 이항 계수 1, 이항 계수 2, 패션왕 신해빈, 팩토리얼 0의 개수, 조합 0의 개수

while문

더하기 사이클, A+B - 5, A+B - 4

문자열

문자열 반복, 크로아티아 알파벳, 단어의 개수, 단어 공부, 그룹 단어 체커, 다이얼

배열

평균은 넘겠지, 최소, 최대, 최댓값, 평균, OX퀴즈, 숫자의 개수

함수

셀프 넘버, 한수

백트래킹

N-Queen, N과 M (1), N과 M (3), 연산자 끼워넣기, 스타트와 링크, 스도쿠

정렬

좌표 압축, 수 정렬하기, 좌표 정렬하기

탐욕법

동전 0, 회의실 배정, 잃어버린 괄호, 주유소, ATM

스택

스택, 괄호, 균형잡힌 세상, 제로, 오큰수, 스택 수열

카드2, 큐 2, 요세푸스 문제 0, 프린터 큐, , 회전하는 큐, AC

재귀

팩토리얼, 하노이 탑 이동 순서, 피보나치 수 5, 별 찍기 - 10

브루트 포스

블랙잭, 분해합, 덩치, 체스판 다시 칠하기, 영화감독 숌

규칙 찾기

벌집, 분수찾기, ACM 호텔, Fly me to the Alpha Centauri

동적계획법

다리 놓기, 피보나치 함수, 신나는 함수 실행, 01타일, 파도반 수열, RGB거리, 정수 삼각형, 계단 오르기, 1로 만들기, 포도주 시식, 쉬운 계단 수, 가장 긴 증가하는 부분 수열, 가장 긴 바이토닉 부분 수열, 전깃줄, LCS, 연속합, 평범한 배낭

분할 정복

쿼드트리

기타

알람 시계

Codility Algorithm

Counting Elements

MaxCounters, FrogRiverOne, PermCheck, MissingInteger

Iterations

BinaryGap

Arrays

CyclicRotation, OddOccurrencesInArray

Time Complexity

FrogJmp, PermMissingElem, TapeEquilibrium

Prefix Sums

PassingCasrs, CountDiv, GenomicRangeQuery, MinAvgTwoSlice

Sorting

Distinct, MaxProductOfThree, Triangle, NumberOfDiscIntersections

Stacks and Queues

Brackets, Fish, Nesting, StoneWall

Leader

Dominator, EquiLeader

Maximum slice problem

MaxDoubleSliceSum, MaxProfit, MaxSliceSum

Prime and composite numbers

CountFactors, Flags, MinPerimeterRectangle

Sieve of Eratosthenes

CountNonDivisible, CountSemiprimes

Prime and composite numbers

Peaks

Euclidean algorithm

ChocolatesByNumbers, CommonPrimeDivisors

Caterpillar method

AbsDistinct, CountDistinctSlices, CountTriangles, MinAbsSumOfTwo

Fibonacci numbers

FibFrog, Ladder

Greedy algorithms

MaxNonoverlappingSegments, TieRopes

Binary search algorithm

MinMaxDivision, NailingPlanks

Dynamic programming

MinAbsSum, NumberSolitaire

Data Structures

ArrListLen, CountBoundedSlices, CountriesCount, TreeLongestZigZag

Algorithmic skills

ArrayInversionCount, DisappearingPairs, FirstUnique, PolygonConcavityIndex, StrSymmetryPoint, TreeHeight

Coding skills

ParityDegree, ParkingBill, ThreeLetters

2017 Contest

SocksLaundering, TennisTournament

2016 Contest

DwarfsRafting, RectangleBuilderGreaterArea

2015 Contest

FloodDepth, LongestPassword, SlalomSkiing

LeetCode Algorithm

Two Pointers

3Sum, 3Sum Closest, Container With Most Water, Camelcase Matching, Maximum Distance Between a Pair of Values, Get Equal Substrings Within Budget, Maximize the Confusion of an Exam, Permutation in String, Two Sum II - Input Array Is Sorted, Partition Array According to Given Pivot, Shortest Unsorted Continuous Subarray, ind All Anagrams in a String, Maximum Points You Can Obtain from Cards, Sort Colors, Boats to Save People

Array

Find the Winner of an Array Game, Hand of Straights, Longest Continuous Subarray With Absolute Diff Less Than or Equal to Limit, Watering Plants

Linked List

Add Two Numbers, Remove Nth Node From End of List, Swap Nodes in Pairs

Math

Excel Sheet Column Number, Reverse Integer, Integer to Roman, Multiply Strings, Simplified Fractions, Number of Substrings With Only 1s, Minimum Moves to Equal Array Elements, Path In Zigzag Labelled Binary Tree, Number of Smooth Descent Periods of a Stock, Closest Divisors

String

Longest Palindromic Substring, Zigzag Conversion, Remove All Occurrences of a Substring, Shifting Letters, Smallest String With A Given Numeric Value

Hash Table

Longest Substring Without Repeating Characters, Group Anagrams, Valid Sudoku, Copy List with Random Pointer, Finding Pairs With a Certain Sum, Find the Longest Substring Containing Vowels in Even Counts, Number of Pairs of Interchangeable Rectangles, Make Sum Divisible by P, Array of Doubled Pairs, Find All Lonely Numbers in the Array, K Divisible Elements Subarrays, Minimum Consecutive Cards to Pick Up, Longest Consecutive Sequence, Contiguous Array, Brick Wall

DFS

4Sum, Combination Sum, Combination Sum II, Generate Parentheses, Letter Combinations of a Phone Number, Path Sum II, Permutations, Permutations II, Surrounded Regions, Count Nodes With the Highest Score, Minimum Time to Collect All Apples in a Tree, Maximum Product of the Length of Two Palindromic Subsequences, Minimum Path Sum, Construct the Lexicographically Largest Valid Sequence, Number of Good Leaf Nodes Pairs, Restore IP Addresses, Count Servers that Communicate, Partition to K Equal Sum Subsets, Detect Cycles in 2D Grid, Battleships in a Board, Beautiful Arrangement, Increasing Subsequence, Additive Number, Different Ways to Add Parentheses, Maximum Length of a Concatenated String with Unique Characters, Palindrome Partitioning, Number of Islands, Word Search

BFS

Minimum Operations to Convert Number, Snakes and Ladders, Get Watched Videos by Your Friends, heck Completeness of a Binary Tree, Shortest Bridge, Shortest Path in Binary Matrix, 01 Matrix, Is Graph Bipartite?, Pacific Atlantic Water Flow, Keys and Rooms, Minimum Height Trees

Dijkstra

Path With Minimum Effort, Network Delay Time, Number of Ways to Arrive at Destination

Binary Search

Find First and Last Position of Element in Sorted Array, Next Permutation, Search in Rotated Sorted Array, Magnetic Force Between Two Balls, Minimum Garden Perimeter to Collect Enough Apples, th Smallest Element in a Sorted Matrix, Maximum Swap, Find Right Interval, Frequency of the Most Frequent Element, Koko Eating Bananas, Single Element in a Sorted Array, Minimum Absolute Sum Difference

Greedy

Jump Game, Jump Game II, Merge Intervals, Smallest Range II, Integer Replacement, Minimum Number of Arrows to Burst Balloons, Minimum Numbers of Function Calls to Make Target Array, Minimum Domino Rotations For Equal Row, Minimum Increment to Make Array Unique, Minimum Time to Make Rope Colorful, Gas Station, Minimum Adjacent Swaps to Reach the Kth Smallest Number, Find Original Array From Doubled Array, Minimum Number of Swaps to Make the Binary String Alternating, Increasing Triplet Subsequence, Minimum Number of Buckets Required to Collect Rainwater from Houses, Partition Labels, Greatest Sum Divisible by Three, Valid Parenthesis String

Matrix

Rotate Image, Spiral Matrix, Game of Life, Set Matrix Zeroes

Concurrency

print FooBar Alternately

Sorting

Maximum Element After Decreasing and Rearranging, Reduction Operations to Make the Array Elements Equal, Minimum Operations to Make a Uni-Value Grid, Sort the Jumbled Numbers, Custom Sort String, Minimum Time Difference

Stack

Smallest Subsequence of Distinct Characters, Daily Temperatures, Online Stock Span, Decode String, Minimum Add to Make Parentheses Valid, Minimum Remove to Make Valid Parentheses, Score of Parentheses

Trie

Replace Words, Search Suggestions System

Brainteaser

Last Moment Before All Ants Fall Out of a Plank

Graph

Minimum Number of Vertices to Reach All Nodes

DP

Coin Change 2, Count Sorted Vowel Strings, Minimum Cost For Tickets, Last Stone Weight II, Solving Questions With Brainpower, Find Kth Largest XOR Coordinate Value, Maximum Length of Repeated Subarray, Combination Sum IV, Jump Game VII, Super Ugly Number, Target Sum, Largest Divisible Subset, Longest Common Subsequence, Longest Palindromic Subsequence, Wiggle Subsequence, Best Time to Buy and Sell Stock II, Best Time to Buy and Sell Stock with Cooldown, Best Time to Buy and Sell Stock with Transaction Fee, Coin Change, Count Number of Teams, Decode Ways, House Robber, Integer Break, Length of Longest Fibonacci Subsequence, Maximal Square, Maximum Product Subarray, Number of Longest Increasing Subsequence, Predict the Winner, Ugly Number II, Unique Binary Search Trees, Unique Paths II, Count Number of Texts, Knight Probability in Chessboard, Largest Plus Sign, Ones and Zeroes, As Far from Land as Possible, Ways to Make a Fair Array

Binary Search Tree

Construct Binary Search Tree from Preorder Traversal, Minimum Size Subarray Sum, My Calendar I

Prefix Sum

Product of Array Except Self, Maximum Sum Circular Subarray

Segment Tree

Range Sum Query - Mutable, Range Frequency Queries

Floyd Warshall

Find the City With the Smallest Number of Neighbors at a Threshold Distance

Priority Queue

Single-Threaded CPU, Jump Game VI, K Closest Points to Origin

Bit Manipulation

Number of Wonderful Substrings

Binary Tree

Verify Preorder Serialization of a Binary Tree

Topological Sort

Course Schedule II, Course Schedule, Find Eventual Safe States, Course Schedule IV, Find All Possible Recipes from Given Supplies

Sliding Window

Longest Turbulent Subarray, Repeated DNA Sequences, Binary Subarrays With Sum, Longest Repeating Character Replacement, Maximum Number of Vowels in a Substring of Given Length, Maximum Sum of Two Non-Overlapping Subarrays, Swap For Longest Repeated Character Substring

Union Find

Satisfiability of Equality Equations, Smallest String With Swaps, Accounts Merge, Redundant Connection