반응형

전체 135

[DP] LIS(최장 증가 부분 수열)

# DP(Dynamic Programming)DP는 이해하는데 어려운 개념은 아니다. 문제에 적용하는 방법이나 방식, 점화식을 찾는데 어려움이 있다. 하나의 큰 문제를 여러 개의 작은 문제로 나누어서 그 결과를 저장하여 궁긍적인 문제를 해결할때 사용하는 문제푸는 방법의 패러다임이라고 볼 수 있다. 풀어서 설명하자면, 꺼내서 사용하기 쉬운 자료구조에 작은 문제에 대한 해결값을 담아둔뒤에 그 자료구조에서 꺼내어서 풀고자 하는 문제를 풀어나아가는 것이다.# LIS(Longest Increasing Subsequence)DP에서 가장 많이 등장하는 문제로 배열이 주어지면 만들 수 있는 증가하는 가장 긴 수열을 만드는 것이다. 사람의 직관으로 풀면 어렵지 않다. 하지만 컴퓨터는 어떻게 풀어야할까? 컴퓨터가 dp를..

Algorithm/Concept 2024.05.21

[BOJ]1753 최단경로(G4, C++)

📋 개요  🧩 문제https://www.acmicpc.net/problem/1753 📝  형식 📥 입력📤 출력첫째 줄에 정점의 개수 V와 간선의 개수 E가 주어진다. (1 ≤ V ≤ 20,000, 1 ≤ E ≤ 300,000) 모든 정점에는 1부터 V까지 번호가 매겨져 있다고 가정한다. 둘째 줄에는 시작 정점의 번호 K(1 ≤ K ≤ V)가 주어진다. 셋째 줄부터 E개의 줄에 걸쳐 각 간선을 나타내는 세 개의 정수 (u, v, w)가 순서대로 주어진다. 이는 u에서 v로 가는 가중치 w인 간선이 존재한다는 뜻이다. u와 v는 서로 다르며 w는 10 이하의 자연수이다. 서로 다른 두 정점 사이에 여러 개의 간선이 존재할 수도 있음에 유의한다.첫째 줄부터 V개의 줄에 걸쳐, i번째 줄에 i번 정점으..

Algorithm/Problem 2024.05.14

[Spring Security] Filter와 Filter Chain에 대한 이해

2024.05.08 - [Framework/Spring] - [Spring Security] Deep Dive (1) [Spring Security] Deep Dive (1)# OverviewSpring Security를 쓰면서 뭔가 [어 되네?]에서 그친 이론과 알고리즘을 제대로 이해하고 내가 원하는 User Level 및 다양한 기능을 활용하기 위해서 Deep Dive 해보고자 한다. 이론부터 실전까지! blaj2938.tistory.com 이전에 Spring Security의 기능 및 역할에 대해서 살펴보았다. 인증, 인가, 보통 수준의 공격(csrf와 같은)으로 부터 방어를 해준다. What을 알았으니 Where를 알아보고자한다.# 어디서 동작해?2023.10.26 - [Framework/Spri..

Framework/Spring 2024.05.11

[BOJ]14502 연구소(G4, C++)

📋 개요 골드문제를 도전해보려고 한다. 맨날 S5~S1만 푸니깐 전체적인 알고리즘을 모르고 학습하는거 같다. 그래프 이론이나 조합, BFS, DFS는 골드 수준에서 자주 나오는거 같다. 그리고 내 백준 레벨에 맞는 문제를 풀어야지 레벨이 빨리오르겠지!!! 인프런 인강으로 아주 쉬운문제도 2문제씩 풀며 뇌를 말랑말랑하게 하고 골드문제를 풀고 있다🧩 문제https://www.acmicpc.net/problem/14502📝  형식 📥 입력📤 출력첫째 줄에 지도의 세로 크기 N과 가로 크기 M이 주어진다. (3 ≤ N, M ≤ 8)둘째 줄부터 N개의 줄에 지도의 모양이 주어진다. 0은 빈 칸, 1은 벽, 2는 바이러스가 있는 위치이다. 2의 개수는 2보다 크거나 같고, 10보다 작거나 같은 자연수이다...

Algorithm/Problem 2024.05.10

[Spring Security] Intro. Deep Dive

# OverviewSpring Security를 쓰면서 뭔가 [어 되네?]에서 그친 이론과 알고리즘을 제대로 이해하고 내가 원하는 User Level 및 다양한 기능을 활용하기 위해서 Deep Dive 해보고자 한다. 이론부터 실전까지! 항상 무턱대고 공부하는 것보다는 흐름을 이해하고 공부하는게 좋은거 같다. Spring Security하기 전에 먼저 MVC 패턴에서 Spring 동작원리를 살펴보는 것이 좋다.2023.10.26 - [Framework/Spring] - [Spring] Spring MVC 패턴의 LifeCycle [Spring] Spring MVC 패턴의 LifeCycle# 목적 이번의 면접 질문중에 Spring MVC 패턴의 Process Flow에 대한 인터뷰 질문을 받았습니다. 워낙..

Framework/Spring 2024.05.08

[AWS 입문] SQS(Simple Queue Service)

# OutlineSQS는 AWS에서 만든 MQ중 하나이기 때문에 MQ를 이해하고 있으면 좋다.다시 MQ를 정리하자면 MQ는 미들웨어다.미들웨어를 어렵게 생각하지 않아도 된다. DB와 같은 레벨이다. 비슷한 솔루션으로 RabbitMQ, 카프카가 있다.(오픈소스임) ➡️오픈소스라는 말은 커스텀도 잘되지만, 그만큼 운영에 소비해야하는 항목들이 늘어난다는 것이다. 이러한 점을 포함해서 몇가지 Advantage로 SQS를 사용하기도 한다. 학습하면서 한번 비교를 해보자 사담으로, AWS 최초 서비스라고 볼 수있다.풍문으로는 웹서비스를 관리해야하는데 고객수가 너무 많아져서 이벤트 기록을 날리기 위해 사용했다고 한다. 2024.04.30 - [Infra Architecture] - [Infra] MQ(Message ..

[BOJ]1206 사람의 수(S1, C++)

📋 개요문제를 풀때 항상 2시간을 잡고 푸는데 2시간이 넘을때까지 풀지 못했다. 부동소수점의 문제인거같아 문자열로 형변환을 해서 풀이를 했지만, 어떤 이유인지 모르게 실패가 되었다... 질문게시판의 모든 반례도 넣어줬는데... 그래서 답안에 대한 복기를 해볼까한다.🧩 문제https://www.acmicpc.net/problem/1206📝  형식 📥 입력📤 출력첫째 줄에 N이 주어진다. 둘째 줄부터 N개의 줄에 각 문항의 평균 점수가 주어진다. N은 50보다 작거나 같은 자연수이고, 평균 점수는 0보다 크거나 같고, 10보다 작거나 같은 소수이다. 항상 소수점 셋째자리 까지 주어진다.첫째 줄에 설문조사에 참여한 사람의 수를 출력한다. 만약, 가능한 정답이 여러가지라면, 가장 작은 값을 출력한다.?..

Algorithm/Problem 2024.05.02

[BOJ]1189 컴백홈(S1, C++)

📋 개요 백준 문제를 다시 풀기 시작했다. S1부터 다시 풀고 포스팅 할 예정이다. 이번 문제는 dfs를 활용해서 풀었다. 재귀에서 발생하는 call stack이 동작 원리를 이해하고 푸는것이 필요하 🧩 문제https://www.acmicpc.net/problem/1189 📝  형식 📥 입력📤 출력첫 줄에 정수 R(1 ≤ R ≤ 5), C(1 ≤ C ≤ 5), K(1 ≤ K ≤ R×C)가 공백으로 구분되어 주어진다. 두 번째부터 R+1번째 줄까지는 R×C 맵의 정보를 나타내는 '.'과 'T'로 구성된 길이가 C인 문자열이 주어진다.첫 줄에 거리가 K인 가짓수를 출력한다.💡  예제🔢 번호📥 입력📤 출력13 4 6.....T......4 🥲  내 코드 및 정답코드HTML 삽입미리보기할 수 ..

Algorithm/Problem 2024.04.30

[Infra] MQ(Message Queue)

# Outline- Message 란?시스템에서 시스템으로 Processing되는 정보의 단위이다. 패킷, 프레임 등등 우리가 일종의 정보를 부르는 것과 같다.- Queue(큐) 란?2023.11.15 - [Computer Science/Data Structure] - [Data Structure] 선형 - 큐(Queue) [Data Structure] 선형 - 큐(Queue)#요약 Queue는 "대기줄"이라는 어원을 갖고 있음 ➡️은행의 번호표와 마찬가지인 구조 선형구조 먼저 입력된 데이터가 먼저나오는 FIFO구조로 저장 스택(Stack)과의 반대 되는 구조 #구체적 설명 먼blaj2938.tistory.com-  Asynchronous(비동기) 란?2024.01.22 - [Computer Scienc..

Infra Architecture 2024.04.30

[Design Pattern] GoF의 Design Pattern 총 정리

#요약생성 패턴 5가지, 구조 패턴 7가지, 행동 패턴 11가지로 나타낼 수 있다. 모두가 OOP에 기반한 클래스와 객체 중심으로 설계되어 있다.# 생성 패턴 (Creational Pattern)1. Singleton(싱글톤)하나의 클래스 인스턴스를 전역에서 접근 가능하게 하면서 "해당 인스턴스가 한 번만 생성되도록 보장"하는 패턴하나의 객체를 생성하면 생성된 객체를 어디서든 참조할 수 있지만, 여러 프로세스가 동시에 참조할 수 없음클래스 내에서 인스턴스가 하나뿐임을 보장하며, 불필요한 메모리 낭비를 최소화 할 수 있음2. Factory Method(팩토리 메서드 패턴)객체를 생성하기 위한 "인터페이스를 정의하고 서브 클래스에서 어떤 클래스의 인스턴스를 생성할지 결정"하는 패턴객체 ..

반응형