전체 글 13

[백준] 1492 - 합 (C++)

1. 문제 소개 2. 풀이 Berlekamp-Massey 알고리즘 Berlekamp-Massey 알고리즘Berlekamp-Massey 알고리즘은 특정한 DP의 점화식을 찾아주는 알고리즘이다. $10^{18}$ 번째 피보나치 수를 찾기 위해서 행렬 곱셈을 짜고, 타일 채우기 문제를 풀기 위해서 수많은 점화식과 씨름하던koosaga.com Berlekamp-Massey 알고리즘을 사용했다. 위의 글을 읽어보면 친절하게 설명돼 있는데, 한 30% 이해한 것 같다. #include #include #include #include #include using namespace std;const int MOD = 1e9 + 7;using lint = long long;lint ipow(lint x, lin..

computer/PS 07:38:45

[백준] 4179 - 불! (C++)

1. 문제 소개 2. 해결 방안과 알고리즘 BFS로 최단거리를 계산할 수 있다. 근데 불이랑 지훈이의 움직임을 둘 다 계산해야 한다. 만약에 fire가 먼저, 지훈이가 지나가야 할 특정 칸에 닿으면(즉, 기록하는 숫자가 fire 3. 코드 #include #include #include #include #include using namespace std;int dx[] = {1, 0, -1, 0};int dy[] = {0, 1, 0, -1};string board[1002];int fire[1002][1002];int escape[1002][1002];queue> qf;queue> qe;int main(){ ios::sync_with_stdio(false); cin.tie(nullpt..

computer/PS 2025.05.10

[백준] 3015 - 오아시스 재결합 (C++)

1. 문제 소개 2. 생각해야 할 거 키 같으면 볼 수 있음 이런식으로 들어간다 이렇게 생각하면 더 큰 '벽'을 만나기 전 광선이 어디까지 가느냐 묻는 문제라고 해도 본질적으로 같다 (상관은 없지만) 3. 알고리즘 활용 monotone stack을 활용한다.모노톤 스택은 정리가 끝난 후가 아니라 각종 operation을 반복하면서 거기서 발생하는 정보가 유의미하다. 예를 들어서 이 문제에서는 stack안의 원소들을 내림차순(정확히는 non-increasing) 으로 유지하면서, pop 하기 전에 수를 카운트한다. 작은 키는 뒤에서 더 큰 키를 만나면 영원히 가려져서 쓸모 X -> 팝(pop).같은 키는 서로 다 볼 수 있음 -> 키 같은 경우 카운트하고 합쳐서 처리 더 큰 키 가려지지 않아서..

computer/PS 2025.05.09

[PS] 일주일 기록

이건... obligatory post이다. 내가 백준을 언제부터 했냐면 2021년부터 했다. 뭐 알고리즘을 한 게 아니라 그냥 C언어 기초를 떼자마자 무턱대고 들어가서 브론즈 문제들을 막 풀었다 한 100문제 풀고 계정을 유기함 갑자기 일주일 전에 PS가 하고싶어졌다. 해킹을 쉰지 6개월 넘어가는 시점이었고 난 아직도 알고리즘 수업을 제대로 들어본 적이 없다. 한 일주일동안 한 거: 기초적인 자료구조, DFS, BFS, monotone stack, 가끔 심심할 때 어셈블리 그렇다 ㅇㅇ

life/log 2025.05.09

[PL] APL을 아십니까 - APL 소개글

1. APL이 뭔데  우리가 아는 프로그래밍 언어를 제외하고도 세상에는 수많은 언어가 존재한다. 어떠한 언어는 성공적으로 상용화되지만 어떤 언어는 애초에 유명해지지 못하기도 하고 어떤 언어는 역사의 뒤편으로 사라지기도 한다.  오늘 소개하려는 APL은 굳이 따지면 잊혀진 언어다. 60-70년대 미국에서는 많이 쓰였을지 몰라도 2025년 한국에서는 APL을 모르는 사람들이 더 많다. 그도 그럴 게 쓰일 일이 없다. 유지보수도 어렵기 때문에 write-only language라고 불리기도 한다. APL의 시작은 수학을 좀 더 간결하게 표현하기 위해서 Ken Iverson이 기호를 끼적이다가 어? 이거... 프로그래밍 언어로 써도 꽤 잘돌아가잖아? 했던 게 시작이었다. 그런 언어를 왜 소개하려고 하는가? 재밌..

projects 2025.03.31

[독서] 2025년 겨울방학 독서

방학동안 총 23권의 책을 읽었다.읽다가 던진 건 기록을 안했고, 이 중에서도 발췌독한 것도 있고 그래서 정확히 23권은 아니다. 애초에 이번 방학에는 한국문학을 많이 읽었고 단편소설의 단위는 책 권수가 아니라 편수이므로, 좀 더 정확히 내가 얼마나 읽었냐 궁금하다면 대충 자지 않는 시간의 1/3은 독서에 썼다고 보면 되겠다.   왜 그렇게 많이 읽었냐? 그 질문에 대해서는 사실 마땅한 대답이 없다.나는 근본적으로 기술쟁이보다는 문과충이고 아직도 등단의 꿈을 가지고 있다. 책을 읽는 건 이쯤되면 본능인 거다. 일년에 갑자기 신내림 받아서 한번에 와다닥 다독하는 기간이 한두번씩 존재한다.    사실 대중적인 작가들은 대부분 한 권이라도 읽어봤는데 이번에 입문한 작가들 중 제일 강렬한 인상을 남겼던 작가는 ..

life/books 2025.03.31

[AI/ML] Attention is all you need

서론 나는 ML/AI 라는 필드를 전혀 모른다. 내가 경험해본 것들은 다음과 같다 챗봇 파인튜닝하고 놀아봄 (친구가 없음)stable diffusion LoRA 만들기 보이스 트레이닝 후 AI 목소리 만들기 그럼에도 내 귀에 들어올만큼 자주 얘기되는 논문이 있다. Transformer를 소개한 Attention is all you need 라는 논문이다.  [1706.03762] Attention Is All You Need Attention Is All You NeedThe dominant sequence transduction models are based on complex recurrent or convolutional neural networks in an encoder-decoder confi..

computer/AI 2024.12.03