www.acmicpc.net/problem/2056 2056번: 작업 수행해야 할 작업 N개 (3 ≤ N ≤ 10000)가 있다. 각각의 작업마다 걸리는 시간(1 ≤ 시간 ≤ 100)이 정수로 주어진다. 몇몇 작업들 사이에는 선행 관계라는 게 있어서, 어떤 작업을 수행하기 위해 �� www.acmicpc.net 해당 문제는 위상 정렬 알고리즘을 이용하여 풀 수 있습니다. 풀이는 다음과 같습니다. 1. 수행 가능한 순대로 작업을 수행한다. 이때, 동시에 수행가능한 작업은 동시에 수행한다. 2. 각 작업을 수행하였을때 걸린 최대 시간을 기록한다. 3. 각 작업을 수행하였을때 걸린 최대 시간 중 최대 시간을 출력한다. 모든 작업을 완수하는데 걸린 최소 시간을 구해야 하는데 풀이에선 최대 시간을 구하는 느낌이 ..
Zig-zag Scanning은 2D Array의 Traversal 방법 중 하나로, 원소를 접근함에 있어 아래와 같이 지그재그 순으로 접근하는 기법입니다. 해당 Traversal 방법은 영상 압축 과정에서 주로 쓰입니다. 관련 내용으로 [H.264] Quantization(양자화)과 Zig-zag scanning 을 참고해보시면 도움이 될 것 같습니다. 위 그림을 보며 원소 접근 방식을 분석해보면 중간중간 방향을 전환하는 분기점이 존재합니다. 그리고, 분기점의 y, x 위치(행렬로 치면 행, 열)에 따라 하향 혹은 우향 방향에 존재하는 원소를 한 번 접근한다음 좌하향 대각선 방향 혹은 우상향 대각선 방향으로 원소를 쭈욱 접근 하는 규칙을 가지고 있음을 확인할 수 있습니다. C++을 이용하여 이를 구현해..
www.acmicpc.net/problem/2751 2751번: 수 정렬하기 2 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 본 문제는 정렬에 관한 문제입니다. 무분별한 C++ STL 사용으로 몇몇 정렬 알고리즘의 구현 방법을 잊은터라 정렬 알고리즘을 복습할겸 알고리즘 문제도 풀겸 일석이조의 효과를 누리고자 해당 문제를 풀었습니다. 코드를 제출하기전에 직감적으로 \(O(N^{2})\)의 복잡도를 갖는 정렬 알고리즘(Selection Sort, Insertion Sort, Bubble Sort)으로는 문제를 통과할 수 없음..
www.edwith.org/linearalgebra4ai/lecture/20102/ [LECTURE] 선형결합 : edwith 학습목표 이번 강의에서는 벡터들 간의 선형결합에 대한 개념과 벡터 공간 상의 span의 개념에 대해 알아보겠습니다. 그리고 선형결합과 관련하여 네 가지의 새로운 관점을 통해 행렬의... - 커�� www.edwith.org Linear Combinations Given vectors \(v_{1}\), \(v_{2}\), \(\cdots\),\(v_{p}\) in \( \mathbb{R}^{n} \) and given scalars \(c_{1}\), \(c_{2}\), \(\cdots\),\(c_{p}\), $$c_{1}v_{1}+c_{2}v_{2}+\cdots+c_{p}x_{..
www.edwith.org/linearalgebra4ai/lecture/19968/ [LECTURE] 선형방정식과 선형시스템 : edwith 학습목표 본 강의에서는 선형방정식과 선형시스템의 개념을 구체적인 예시와 함께 배워보겠습니다. 그리고 선형방정식을 풀기 위한 방법 중 한 가지인 역행렬과 항등 행렬의 개념을 배우게... www.edwith.org 본 게시글은 주재걸 교수님의 인공지능을 위한 선형대수 강의를 수강하고 관련 내용을 정리한 글입니다. Linear Equation 방정식을 구성하는 각각의 항이 상수 또는 차수가 1인 변수와 계수와의 곱으로 구성되며, 이들의 합으로 표 현되는 방정식 $$a_{1}x_{1}+a_{2}x_{2}+\cdots+a_{n}x_{n}=b$$ Variables: \(x_{..
본 게시글은 해당 링크를 참고하여 작성된 게시글입니다. Multi GPUs를 사용하여 Model을 학습시키고 Weights을 저장하면 모든 Parameter의 Key값에 "module."이 붙은채로 저장됩니다. 그런데, 이렇게 되면 Model의 멤버 변수(self.*)를 클래스 외부에서 접근할때 코딩 시 객체명.* 으로 접근하지 못하고 객체명.module.*과 같이 "module"을 붙여주어야 접근이 가능해집니다. 이렇게 되면, 코드를 작성할때 항상 module의 존재를 신경써주어야 합니다. 문제를 파악해봅시다. module이 붙는 이유는 Model을 병렬화 시켰기 때문이고, Model을 병렬화 시켰던 이유는 Load하고자하는 Weights의 Key값에 'module.'이 붙었기 때문입니다. 해결 방법은..
www.acmicpc.net/problem/9251 9251번: LCS LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. www.acmicpc.net 본 문제의 제목은 LCS(Longest Common Subsequence)입니다. 이름만 봐도 유명한 문제라는 느낌이 들어 서칭을 바로 해보았습니다. 역시나 유명한 문제였습니다. LCS는 Longest Common Substring과 Longest Common Subsequence이 존재합니다. 2개는 다른 의미를 가지므로 구분해야합니다. 차이점은 공통되는 부분의 연..
www.acmicpc.net/problem/2294 2294번: 동전 2 첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다. 가치가 같은 동전이 여러 번 주�� www.acmicpc.net 본 문제는 동전들이 주어지고, 각각의 동전에 대한 가치(원으로 생각)가 주어집니다. 그리고, 이 동전으로 k 원을 만들어낼 수 있는지, 만들어낼 수 있다면 주어진 동전을 최소 몇개를 써야 k원을 만들어낼 수 있는지를 묻는 문제입니다. k원을 주어진 동전을 최소로 사용하여 만들기 위해서는 k원보다 작은 금액들을 먼저 최소로 사용하여 만들 수 있어야 합니다. 어떤 문제를 작은 문제..
평소 관심있던 기업에 운좋게 서류를 통과하여 코딩테스트를 볼 수 있었다. 주어진 문제는 3문제였고 2시간내로 풀어야했다. 첫번째 문제는 Problem Solving 세계에서 유명한 문제였기에 금방 풀어낼 수 있었다. 두번째 문제와 세번째 문제가 정말 문제였다. 세번째 문제는 도저히 시간내에 못풀겠다 싶어 두번째 문제를 풀었는데 효율성 테스트를 한 케이스도 통과하지 못했다. 사유는 시간초과였다. 반복문을 조금이라도 줄일 수 있는 경우를 생각하여 시도해보긴 했는데 결국 실패로 끝났다. 테스트를 마치고 다시 한 번 진득히 복기의 시간을 가져보았다. 이번이 인생 3번째 코딩테스트였는데 복기를 하는 건 처음이였다. 복기를 하다보니 뭐를 놓쳤는지 생각이 들기 시작했다. 문제를 풂에 있어 탐색 알고리즘이 요구되는 문..
- Total
- Today
- Yesterday
- LCA
- 인공지능을 위한 선형대수
- ㅂ
- 파이참
- C++ Deploy
- 단축키
- 가장 긴 증가하는 부분 수열
- 백준 11437
- 자료구조
- cosine
- 위상 정렬 알고리즘
- 순열
- 문제집
- 조합
- 백준
- MOT
- 이분탐색
- 백준 1766
- PyCharm
- Lowest Common Ancestor
- 백트래킹
- FairMOT
- 백준 11053
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |