일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 1차원 DP
- 2차원 dp
- 99클럽
- @BeforeAll
- @BeforeEach
- @Builder
- @Entity
- @GeneratedValue
- @GenericGenerator
- @NoargsConstructor
- @Query
- @Table
- @Transactional
- Actions
- Amazon EFS
- amazon fsx
- Android Studio
- ANSI SQL
- ApplicationEvent
- assertThat
- async/await
- AVG
- AWS
- Azure
- bind
- builder
- button
- c++
- c++ builder
- c03
- Today
- Total
목록코딩테스트 (132)
기록
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/sEbt7/btsKKNibxOh/Uq6nzkwvXlbMNzKR15spYk/img.png)
오늘의 학습 키워드문제1: max_element 활용문제 링크 - 프로그래머스 "모의고사" 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 공부한 내용 정리(1) max vs max_element C++에서는 최댓값을 구할 때 std::max와 std::max_element를 상황에 맞게 선택해서 사용할 수 있습니다. 두 함수는 비슷한 목적을 가지고 있지만, 활용 방식과 반환값에서 차이가 있습니다.항목std::maxstd::max_element기능두 값 또는 세 값 중 최댓값 반환컨테이너 내에서 최댓값을 가진 요소의 반복자 반환입력값두 값, 세 값, 또는 초기화된 값들반복자 범위(begin, end)반환..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/wPhYE/btsKLcaWgxW/b3wM1raMzVZbOSim9s6zG0/img.png)
우선순위 큐를 활용한 문제 풀이와 학습 기록문제1 : 우선순위큐, 표준 입출력 동기화 해제https://www.acmicpc.net/problem/2075학습 과정: 다양한 시도와 결과문제1 : 우선순위큐, 표준 입출력 동기화 해제(1) 시도1: 메모리 초과모든 데이터를 우선순위 큐에 삽입한 후, (N)번째로 큰 값을 찾는 방식으로 접근했습니다.문제점: 메모리 초과 발생.총 (N \times N = 2,250,000)개의 정수를 큐에 저장해야 하므로 메모리 사용량이 (12)MB를 초과.각 정수가 (4)바이트라면 (9)MB가 필요하지만, 우선순위 큐의 내부 관리 메모리까지 고려하면 제약을 넘습니다.모든 데이터를 저장하기보다는 문제를 해결하는 데 필요한 최소한의 데이터만 유지해야 한다.#include #in..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dh8eaZ/btsKJPMKv1N/XhrYUWi4mYvn1bip9Vwv1k/img.png)
문제 소개https://www.acmicpc.net/problem/2212 : 그리디고속도로 위에 여러 개의 센서를 설치하고, 센서에서 수집한 자료를 분석하기 위해 몇 개의 집중국을 세워야 합니다. 예산상의 제약 때문에 최대한 적은 영역을 커버할 수 있도록 집중국을 배치해야 합니다. 이 문제에서는 그리디 알고리즘을 이용하여 전체 커버리지의 길이 합을 최소화할 수 있도록 집중국을 배치하는 방법을 배웁니다. 또한, 문제를 해결하면서 set과 vector의 사용법, 정렬된 자료구조를 다루는 방법을 학습했습니다.학습 내용 정리1. 그리디 알고리즘그리디 알고리즘은 현재 상황에서 가장 최선의 선택을 반복하여 전체 문제를 해결하는 방식입니다. 이 문제에서는 "가장 긴 거리 간격을 우선적으로 제거하여 구간을 최소화"하..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bR7s5f/btsKGJeQU2N/ljMDkgLhkh2ycIHWtZhSvk/img.png)
오늘의 학습 키워드문제1: Dequeuehttps://www.acmicpc.net/source/86367481 공부한 내용 본인의 언어로 정리하기문제1: Dequeue (1) DequeDeque(덱)는 "Double-Ended Queue"의 약자로, 양쪽 끝에서 삽입과 삭제가 가능한 자료 구조입니다. 이는 큐와 스택의 기능을 모두 수행할 수 있어 다양한 문제를 해결하는 데 유용합니다. C++에서는 라이브러리를 통해 이를 쉽게 사용할 수 있습니다. (2) 문제 풀이 과정이번 문제는 백준에서 제공하는 카드 관련 문제입니다. 문제의 요구사항은, 카드 한 장을 버리고 다음 카드를 제일 아래로 옮기는 작업을 반복하여 카드의 최종 상태를 구하는 것입니다.아래 코드를 통해 문제를 해결했습니다:#include #in..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dXpTnp/btsKDVtMuID/8oYNpWRMrI07K6hekaD1bk/img.png)
오늘의 학습 키워드문제1 : 비트마스크, 브루트 포스이번 문제에서는 주어진 행렬을 특정 조건에 맞게 변형하여 목표 상태에 도달하는 방법을 학습했습니다. 목표 상태와 현재 상태가 주어졌을 때, 최소 횟수로 행과 열을 뒤집어 목표 상태로 만들 수 있는지를 확인하는 문제입니다.https://school.programmers.co.kr/learn/courses/30/lessons/131703#qna공부한 내용 본인의 언어로 정리하기문제1 : 비트마스크, 브루트 포스 (1) BFS처음에는 BFS(너비 우선 탐색) 을 사용해 목표 상태와 현재 상태를 비교하며 다른 열과 행을 찾아서, 그 열이나 행을 뒤집는 방식으로 접근했습니다. 그러나 이 방법은 계산량이 많아져 시간 초과가 발생했습니다. 특히 행렬의 상태가 복잡할..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/k6Wjy/btsKBT8O9Wc/9pZKit4RkB5fjxKVeikehK/img.png)
오늘의 학습 키워드문제1 : sort, unordered_maphttps://school.programmers.co.kr/learn/courses/30/lessons/42576공부한 내용 본인의 언어로 정리하기문제1 : sort, unordered_map (1) sortsort 함수는 참가자와 완주자를 정렬한 후 두 벡터를 순차적으로 비교하여 처음으로 불일치하는 이름을 반환하거나, 참가자의 마지막 남은 이름을 반환하여 완주하지 못한 선수를 찾아내는 방식으로 문제를 해결합니다. sort를 사용하기 때문에 시간 복잡도는 O(N log N)입니다. 많은 데이터가 있을 때 다소 비효율적일 수 있습니다.#include #include #include using namespace std;string solution..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ZgxjN/btsKzyc8Flf/JEjspx7MvZ0NOaQv6wanYK/img.png)
오늘의 학습 키워드문제1 : BFS, 단방향 그래프https://www.acmicpc.net/problem/18352 공부한 내용 본인의 언어로 정리하기문제1 : BFS, 단방향 그래프 (1) BFS, 우선순위 큐이 문제는 최대 레벨(거리)이 정해져 있으므로, 큐에 있는 것들 중에서 레벨이 작은 것부터 꺼내서 작업해야 합니다. 여기서는 deque를 사용하여 큐의 앞에서 노드를 꺼내왔지만, 우선순위를 적용하여 더 낮은 값을 가져올 수도 있습니다. 이를 위해 우선순위 큐(priority queue)를 활용할 수 있습니다. 우선순위 큐를 사용하게 되면, 특정 조건을 만족하는 노드를 보다 효율적으로 처리할 수 있습니다.최대 힙: 기본적으로 priority_queue는 최대 힙을 사용하며, 가장 큰 값이 최상위에..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bH38IT/btsKxKLAVy3/CxZRLUnUIea2LFsm9mD1Gk/img.png)
오늘의 학습 키워드문제 1: 그래프 (Graph)https://school.programmers.co.kr/learn/courses/30/lessons/77486#qna공부한 내용 본인의 언어로 정리하기문제 1: 그래프 (Graph) (1) 단방향 그래프단방향 그래프는 노드 간의 연결이 한 방향으로만 이루어지는 구조로, 이 문제에서는 판매자와 그들의 소개자 간의 관계를 나타내는 데 사용되었습니다. 각 판매자는 자신의 소개자에게 수익의 일부를 분배해야 하므로, 이러한 관계를 효과적으로 모델링할 수 있습니다. (2) 잘못된 최적화 시도: 판매자별로 수익을 모두 더해서 한번에 수익 분배 시도수수료는 버림처리하므로, 수익을 합산해서 구한 수수료와 각 수익에서 구한 수수료의 합이 다르다는 것을 간과했습니다.예..