-
알고리즘 동아리 방학 모의고사 운영
세미나 운영에 대한 회고 알고리즘 동아리 운영에 있어 세미나를 어떻게 진행해야 할지는 정답이 없는 문제입니다. 너무 양이 많으면 기죽는 회원들이 생기지만 너무 적으면 세미나인지도 모호합니다. 난이도를 보아도 너무 어려우면 진입장벽이 생기고 너무 쉬우면 숙련자들에게 큰 의미가 없습니다. 종강이 다가올수록 줄어드는 관심 또한 문제이며, 방학 때는 정말 좋아하는 사람이 아니고서야 별도의 공부를 하지 않는 경우가 많습니다. 제가 회장으로 있는 알고리즘 동아리인 AlKor도 예외는 아니어서, 방학 때 별도의 세미나를 진행하지 않았습니다. 비록 일부 회원들이 ‘숭고한 알고리즘 캠프’에...
-
Cold Fusion
Cold Fusion Attention을 사용한 Seq2Seq 모델은 기계 번역이나 이미지 캡션, 그리고 음성 인식 등의 여러 자연어 처리 태스크에서 사용되고 있습니다. Cold Fusion은 Seq2Seq 기반의 모델에서 성능 향상을 위해서 제안된 방법 중 하나로, 사전에 학습된 언어 모델을 함께 사용하여 성능을 높이는 것을 목적으로 합니다. 이 글에서는 먼저 Attention을 사용한 Seq2Seq 모델에 대해서 간략히 알아보고, 이 모델의 성능을 높이기 위한 semi-supervised learning 기법에 대해서 알아볼 것입니다. 마지막으로, Cold Fusion 이전에 제안되었던 Langauge model을 사용하는 방법들인 Shallow Fusion과...
-
알고리즘 문제 풀이6
알고리즘 문제 풀이 6 최근에 푼 재미있는 문제들을 포스팅 해보겠습니다. BOJ 1530 금민수의 합 이 문제는 4와 7로만 이루어진 수를 금민수로 정의하고, $N$($\leq1,000,000,000$)이 주어지면 $N$을 금민수의 합으로 나타내는 방법을 찾는 문제입니다. 만일, 방법이 여러가지라면 수의 개수가 적은 방법을, 이러한 방법 또한 여러가지라면 사전순으로 최소인 방법을 찾아야 합니다. 우선 여러가지 관찰을 해봅시다. 첫번째로 주어진 수 $N$을 금민수들의 합으로 표현하는 것이 불가능한 경우가 있을까요? 네, 물론 있습니다. 작은 수에서 예를 들어보면 1, 2, 3, 5, 6, 9,...
-
problem solving 1
문제풀이를 하면서 재미있었던 문제를 소개하고자 간단하게 문제 설명과 풀이를 작성해보았습니다. Min Max Convert (SEERC 2018) $N (N \leq 100,000)$개의 숫자를 가진 배열 $A, B$가 주어질 때, 2가지 쿼리를 이용하여 $A$ 배열을 $B$ 배열로 만들 수 있으면 해당 쿼리를 출력하고 불가능하면 -1을 출력하는 문제입니다. 그리고 가능한 경우에는 쿼리를 $2*N$ 번 이하로 사용해서 만들어야 합니다. 첫번째 쿼리는 $[a, b]$ 구간의 숫자들을 모두 해당 구간의 최대값으로 변경하는 쿼리고, 두번째 쿼리는 $[a, b]$ 구간의 숫자들을 모두 해당 구간의 최소값으로...
-
알고리즘을 이용한 Problem Solving
Lagrange the Chef (Nanjing 2018) 당신은 요리사입니다! 당신이 만들 수 있는 요리는 $10^6$개가 있으며, 손님에게 만들 수 있는 요리 중 $N$개를 코스요리처럼 순서대로 주려 합니다. (고를 수 있는 요리는 중복 가능합니다.) 당신의 식당에 한 손님이 찾아 왔습니다. 이 손님은 매우 특이하여 $X, Y$요리가 연속적으로 나오는 것을 싫어합니다. 즉 $X$다음에 바로 $Y$요리가 나오거나, $Y$다음에 바로 $X$음식이 나오면 불평을 하며 식당을 떠나갑니다. 당신은 식당에 불만이 들어오는 것을 싫어합니다. 따라서, 요리를 하는 순서를 적당히 바꾸어 주려 합니다. 하지만...