본문 바로가기

전체 글

(145)
2024년 3월 18일 일기 3월 14일 16시 경에 42 Seoul 이너 서클 마지막 과제를 마치고 멤버가 되었습니다. 대략 5개월 반 정도 걸렸는데 학교 병행 안 했으면 더 빨리 끝났을 수도? 하지만 가정은 아무런 의미가 없고 결론이 중요하지요. 마지막 과제는 웹 서비스 프로젝트였는데 저는 프론트 + 디자인 + CLI 파트를 담당하였습니다. 한 달 정도 걸렸는데 훌륭한 백엔드 팀원들 덕분에 빨리 끝난 것 같습니다. 이번 생의 마지막 프론트 프로젝트였기를 바랍니다, 화면 싸기 시러요. 오랜만에 춘천에서 이틀 정도 쉬었는데 재미있게 잘 쉬는 것도 재능인 것 같습니다. 집에서 쉬는 것보다 클러스터에서 할로우 나이트 하는 게 더 재밌어요. 충분히 쉰 것 같아서 미루고 미루던 업무들 처리하고 슬슬 아우터 과제 시작하려고 합니다. 오늘이나..
CPP Module 09 self check list 서론 Ford-Johnson(포드 존슨) 알고리즘으로 유명한 이 과제는 제대로 구현한 사람을 찾기가 힘들다. 짐작하건대 통과자 중 75%는 완전히 잘못 짰고 15%는 그럴 듯 하게 보이게 짰으며 나머지 10%만이 제대로 짰다. 본래 포드 존슨 알고리즘을 주제로 쓰려고 하였으나 귀찮기도 하고 1시간 뒤에 출근할 계획이라 주제를 조금 바꿨다. 제출하기 전에 이 정도는 스스로 확인해보자. Exercise 00: Bitcoin Exchange 어떤 컨테이너를 사용하였는가? key-value 쌍을 효율적으로 저장할 수 있는 컨테이너인가? (std::map을 선택하지 않았다면) 선택한 컨테이너는 std::map에 비하여 어떠한 장단점이 있는가? key의 타입은 무엇인가? 정답은 없지만 약간의 성능 차이는 있을 것이..
2024년 1월 17일 일기 알고리즘 공부를 하지 않은지 대략 4개월이 지났습니다. SCPC 4등상, 코포 찐렌지라는 목표는 달성하지 못하였지만 미련은 없습니다. 감다뒤가 되지 않도록 가끔씩 깔짝대고만 있습니다. 언젠가는 재활을 시작할 수도 있기는 한데 아마도 장례식이 열릴 것 같습니다. 알고리즘 공부를 쉬게 된 가장 큰 이유는 과도한 스트레스 때문입니다. 대회를 잘 치면 아주 잠시 기부니가 죠습니다. 대회를 못 치면 하루종일, 심하면 다음 날까지 스트레스가 사라지지를 않습니다. 잘 칠 확률과 못 칠 확률은 반반이니 50% 확률로 스트레스를 받게 됩니다. 어려운 문제를 해결하며 성취감을 느끼는 부류도 있지만 저는 아닌 듯 합니다. ICPC도 정말 나가기 싫었지만 마지막 기회라서 출전은 하였습니다. 예선에서는 Zoom이 억까를 시전하..
push_swap 기수 정렬 가이드 (비번은 slack에) 보호되어 있는 글입니다.
SCPC 2023 서론 후기가 많이 늦었다. 트로피 받고 작성하려고 하였는데 트로피가 생각보다 늦게 도착하였다. SCPC 2023 Round 1 알고리즘을 어느 정도 공부하였다면 만점을 받을 수 있을 정도로 쉽게 출제되었다. 1번 - 증강현실 배달 안경 단순 구현 2번 - 딸기 수확 로봇 이분 탐색 3번 - 장난감 kmp 4번 - 최적의 프로세스 수행 순서 z 입력 데이터에 오류가 있어서 하마터면 만점을 놓칠 뻔하였다. 5번 - 타이젠 cht 점수 1번: 100 / 100 2번: 100 / 100 3번: 200 / 200 4번: 200 / 200 5번: 300 / 300 총점: 900 / 900 SCPC 2023 Round 2 3번이 꽤 어려웠고 4번과 5번은 정답자 수를 보고 포기하였다. 1번 - 타이젠 윷놀이 더러운 ..
CodeTON Round 6 Dashboard - CodeTON Round 6 (Div. 1 + Div. 2, Rated, Prizes!) - Codeforces codeforces.com 서론 SCPC 후기를 쓰려다가 트로피 수령하고 쓰려고 미뤘다. 코포 이야기를 하자면, 정말 잘 봐서 또 다시 승급 기회가 생겼다. A - MEXanized Array A번 치고 조금 복잡하다. 우선 min(N, x + 1) < K이면 답은 -1이다. 그렇지 않다면 배열의 첫 K개 원소는 0, 1, 2, ..., (K - 1)로 채우자. 나머지 (N - K)개 원소는 x = K인 경우 (K - 1)로, 그렇지 않다면 x로 채우면 된다. 00:04 AC B - Friendly Arrays N이 홀수인 경우 연산을 수행하면 x는 증가하거나 변하지 않는..
Codeforces Round 896 Dashboard - Codeforces Round 896 (Div. 1) - Codeforces codeforces.com A - Fill in the Matrix 우선 M이 1이면 답은 0이다. 예제로 주어지지 않았다면 반례 찾는데 한참 걸렸을 것 같다. M이 1이 아니라면 답은 min(N + 1, M)이다. 먼저 최대 (M - 1)개의 행을 다음과 같이 채우자. 0 1 2 ... (M - 2) (M - 1) 1 2 3 ... (M - 1) 0 ... (M - 2) (M - 1) 0 ... 여기까지 하면 답은 min(N + 1, M)이 된다. 나머지 행도 적절히 채워야 하는데 그 다음 행을 동일한 규칙으로 채우는 순간 답은 0이 되어버린다. 간단한 방법으로 이를 방지할 수 있다. 나머지 모든 행을 첫..
2023 신촌지역 대학생 프로그래밍 대회 동아리 연합 여름 대회 (SUAPC 2023 Summer) Open 2023 신촌지역 대학생 프로그래밍 대회 동아리 연합 여름 대회(SUAPC 2023 Summer) Open · Arena #5 사용 가능한 언어 C++17 Java 8 Python 3 C11 PyPy3 C99 C++98 C++11 C++14 Java 8 (OpenJDK) Java 11 C++20 Java 15 www.acmicpc.net L - 나의 FIFA 팀 가치는? pq 00:07 AC G - 개발자 지망생 구름이의 취업 뽀개기 동일한 난이도의 문제들을 푸는 데 걸리는 최소 시간은 sum(시간) + max(시간) - min(시간)이다. 따라서 푸는 데 걸리는 시간이 짧은 문제부터 풀면 된다. 00:16 AC K - 케이크 두 개 두 케이크의 중점을 지나는 직선을 그리면 된다. 직사각형의 중점은 ((..