분류 전체보기 83

갑자기 스와이프 벽돌깨기 레플리카를 만들어 보았다

제목 그대로이다. 나도 왜 만들었는지는 잘 모르겠지만 아무튼 만들어버려서, 앞으로 이걸 플레이하는 AI를 강화학습 또는 유전 알고리즘으로 학습시켜볼까 한다. github.com/SyphonArch/brick_breaker GitHub - SyphonArch/brick_breaker: This project features a clone of a popular 'brick breaker' game variant, characterised by sho This project features a clone of a popular 'brick breaker' game variant, characterised by shooting a volley of 'balls' at an angle of choice. Alo..

개발/기타 2021.01.08

대회후기: Codeforces Round #694 (Div. 2)

와 후기 엄청 밀렸다 ㅋㅋㅋㅋ A: Strange Partition 하나도 안합치기 vs 다합치기 2분에 AC B: Strange List 구현문제. 그냥 각 원소가 몇개 있는지 저장해주면서 작업을 해주면 된다. 22분에 AC 하지만 파이썬당해서 C++로 다시 짜느라 20분이나 걸렸다 ㅠㅠ C: Strange Birthday Party Greedy. 34분에 AC 하지만 오타로 인해 이게 왜 안되지?? 하면서 시간을 버렸다.. D: Strange Definition Adjacent의 정의를 잘 분석해보면, 두 숫자의 곱이 제곱수인지의 여부와 일치하는 것을 확인할 수 있다. 결국 각 숫자를 (제곱수) * (제곱수가 포함되어 있지 않은 수)로 분해시켜서 (제곱수가 포함되어 있지 않은 수)에 따라 groupi..

대회후기: Good Bye 2020

지난 송년대회에 이어 이번 송년대회도 망했다. Just more so this time. A: Bovine Dilemma 정말로 trivial. 3분에 AC B: Last minute enhancements Greedy. 5분에 AC C: Canine poetry C 치고 어려웠다. 모든 palindrome은 결국 substring으로 길이 2 또는 3짜리 palindrome을 갖고 있다는 생각으로 출발했다. 길이 2와 3짜리 palindrome의 생성을 방지하기 위해서는 특정 캐릭터 기준 앞과 뒤의 캐릭터 두개씩을 살펴야 한다. 고로 문제의 해결 방법은, O(n)O(n)으로 문자열을 통과하면서 앞뒤 두개씩의 문자를 살피며 적절한 수정을 해주는 것이다. 25분에 AC D: 13th Labour of Hera..

대회후기: Educational Codeforces Round 101 (Rated for Div. 2)

2개월만에 참여하는, 종강 후 첫 대회이다. A: Regular Bracket Sequence A번 문제 치고 문제가 복잡해서 시간을 많이 뺐겼다. 6분에 AC B: Red and Blue 각각의 누적합 최댓값을 더해주면 된다. 이게 왜 11분 걸렸지..? 17분에 AC C: Building a Fence 각 x축 위치마다, fence를 build할 수 있는 구역이 하나의 연속된 구간으로 정해짐이 문제 풀이의 핵심이다. O(n)으로 이 구역을 계산해나가면 된다. 43분에 AC D: Ceil Divisions 정말 많은 시간을 투자한 문제다. 대회 종료 후 두명의 친구에게 물어본 결과, 세명이 전부 다 다른 풀이로 해결했었다. n과 하나의 숫자만을 남기고 전부 다 1로 바꿔놓고, 두 숫자를 남은..

반년기록의 필요성

대학글쓰기 과제 때문에 미칠 것 같다는 생각을 하던 와중, 이번 학기와 지난 3학기의 로드를 돌아보게 되었다. 대학에 입학한 지 거의 2년, 이제 4번째 학기이다. 지금 안그래도 글쓰기 과제중이라 여기다가 또 장황하게 가다듬어서 글을 쓰고싶지는 않다. 그래서 간단하게 말하자면, 매번 나는 뭔가 많이 하는데, 그 뭔가가 뭐였는지는 반년만 지나도 잊게된다. 기억이 나더라도, 결과물 위주의 기억만 날 뿐, 그 당시에 내가 어떤 활동에 의미를 두고 활동했는지, 혹은 어떤 수업과 일이 힘들었는지의 기록이 남지 않는다. 매 학기 내가 무슨 일을 했는지는 이렇게 그냥 잊혀지기에는 너무 소중한 정보인 것 같다. 그래서 게시판을 시작한다. 반년에 하나, 즉 매년 두개의 글을 통해 내가 그 6개월의 기간 동안 무슨 일을 ..

대회후기: Codeforces Round #678 (Div. 2)

잠시 과제와 시험이 없는 틈을 노려 무려 두달 반만에 코드포스 대회를 접수했다. A: Reorder 문제를 해석하는 순간 사실상 끝난다. Reordering은 낚시. 2분에 AC B: Prime Square 여러 가지 풀이가 있는 듯 하다. 나같은 경우, 1n1개 배열한 후, 더해서 소수가 되는 숫자 하나를 더 추가해 하나의 행을 만들었다. 이 행을 한칸씩 밀어 배치해주면 square가 완성된다. 13분에 AC C: Binary Search 풀고 나서 보면 꽤 쉬운 문제인데, 이런 생각을 해본 적이 없어서 뇌정지가 잠깐 왔었다. 직접 이진탐색을 해보며, 찾고자 하는 값보다 왼쪽과 오른쪽에서 확인하게 되는 원소의 수를 기록하면 된다. 왼쪽과 오른쪽에서 확인하는 원소의 수가 정해지면, 경우의..

대회후기: 2020 ACM-ICPC Seoul Regional 예선

대회를 너무 캐주얼하게 진행했더니 캐주얼하게 망해버렸다. 원래 같았으면 대충 윗공대에서 치렀을텐데, 두 대의 카메라를 동원해 Zoom에 접속해 컴퓨터 화면과 팀원들이 나오도록 설치해 둔 상태로 대회를 진행해야 한다는 번거로운 온라인 대회 규칙 때문에 서울대입구역의 토즈 스터디룸을 빌려 대회를 진행하게 되었다. 대회에서 시도한 문제 순서대로 정리하겠다. I: Project Teams 스코어보드를 참고해 제일 쉬운 문제인 I를 먼저 잡았다. 문제를 다 읽기도 전에 정렬 후 앞뒤로 짝지어주는 well-known 풀이가 떠올랐다. E: Cycle Game 그래프를 그려나갈 때, 사이클이 생기는 시점을 감지하면 된다. 읽자마자 UFDS를 떠올렸으나, 문제를 잘못 이해한 Nyso가 다른 방법으로 시도한 후 한번 실..

대회후기: 디지털 헬스 해커톤 2020 (DHH) - AI 트랙

발단 의대간 고교친구 S가 갑작스럽게 이 대회를 하자고 연락했다. 솔직히 연락을 처음 받은 순간에는 거절하고자 하는 마음이 더 컸다. 스누포 앙상블 등으로 한창 바쁘던 시기가 막 끝난 시점이었고, 조금은 휴식의 시간을 갖고 싶었었다. 인공지능이라고는 고교때 잠깐 끄적여본 기본적인 인공신경망이 전부였다. '의료' 해커톤인 점 또한 망설이게 만들었다. 과연 내가 이 대회에 유의미한 기여를 할 수 있을까..? 하는 의문이 컸다고 할 수 있겠다.. 하지만 내가 항상 그렇듯 일단 일을 벌리고 본다. 고민해보고 답장을 주겠다는 연락을 보낸 순간, 난 이미 할일 스택에 이 대회를 올려놓았을거다. 전개 나와 친구 S, 그리고 친구의 선배 P로 Team Softmax가 구성되었다. 올해 신설된 AI 트랙이라 그런지 대회..

Hackathons 2020.09.18

대회후기: SNUPC 2020 (Div. 2)

대학을 와서 치는 두번째 SNUPC다. 작년, 나의 레이팅 상승 추이를 보며, 2020년에는 SNUPC의 Division 1에 출전할 수 있으리라 생각했던 것이 기억난다. 안타깝게도 1년 사이에 큰 폭의 실력 상승은 없었고, Division 1에 출전할 용기 또한 없었다 ㅋㅋ 요즘 들어 CP에 조금 소홀해진 듯한 느낌이 드는데, 이런 와중에 치른 대화라 그런지 작년의 열심은 없었던 것 같다. 코로나의 여파로 인해 집에서 치뤄서 그런가..? 이제 시작한 2학기에는 작년처럼 조금 더 열심히 실력을 업그레이드할 수 있으면 좋겠다. 암튼 대회 스타트..! A: 수면 패턴 구현 문제다. 파이썬으로 퍼솔 달성!! B: 단어 개수 세기 역시 구현 문제다. 파이썬으로 퍼솔 달성!! C: 넴모넴모 2020 이진탐색 기본..