코딩 176

BOJ 2802 - 크레용

문제 링크 : https://www.acmicpc.net/problem/2802 문제 풀이 K개를 골랐을 때 최솟값을 구하는 문제... 문제를 딱 보면 최솟값을 구하는것이 아니라 특정 x값 이내가 되도록 k개를 고를 수 있는지에 대한 결정 문제로 변화시켜야 된다는 감을 잡을 수 있다. 즉, 파라메트릭 서치를 사용하면 될 것이라는 것이다. 파라매트릭 서치를 사용한다고 치자. 어떤 m*m*m 범위가 존재하여 그 안에 k개가 있는 그러한 범위가 있는지를 빠르게 판별해야 한다. 위치가 바뀌지 않으니까, prefix sum을 이용하면 된다. 3차원 이기 때문에 포함과 배제의 원리와 prefix sum을 잘 이용하면 m*m*m 큐브 범위내의 수를 셀 수 있다. 구현이 살짝 까다롭다. 1차이 관리가 살짝 까다로우며 ..

[NYPC 홍보글] 우리가 NYPC를 참가해야하는 3가지 이유

0. NYPC란? 코딩에 대한 청소년들의 관심 제고와 역량 증진을 목적으로 2016년 부터 넥슨에서 매년 개최하고 있는 청소년 코딩 대회이다. 전국의 12-19세 청소년을 대상으로 열리는 대회이다. (참가비無) 넥슨 게임 IP를 활용한 문제, 직접 코딩한 결과를 볼 수있는 시뮬레이션 문제 등재미있는 프로그래밍 문제를 통해 코딩에 대한 인식 변화와, 즐거운 경험 및 도전의 장을 제공하고자 만든 대회이다. 한 줄 요약 : 재미있는 프로그래밍 문제로 이루어진 청소년 코딩 대회! 1. WHY NYPC? NYPC를 3년 동안 참가해본 입장에서 NYPC를 참가해야하는 3가지 이유를 말해보려고 한다. 그 3가지는 크게 경험, 보상, 가능성이라고 말할 수 있을 것 같다. 경험! NYPC에 참가하는 것은 정말 좋은 경험..

UCPC 은퇴한 자들의 게임 - stonejjun의 game theory 풀이

문제 링크 : https://www.acmicpc.net/problem/22883 의도된 풀이 주최측에서 의도한 풀이는 관찰을 통해서 주어진 임의의 게임판을 1*a 혹은 b*1 게임판으로 바꾸는 것이었다. 그렇게 되면 특정 게임판은 가로로만 이동이 가능하거나, 세로로만 이동이 가능하기 때문에 바로 둘이 각각 최대 몇턴 동안 살아남을 수 있는지가 구해진다. 따라서 직관적으로 누가 이길지를 계산할 수 있다. Stonejjun의 풀이 Part 1. 기본 지식과 유리도의 이해. 이 게임은 기본 상태보다 자신이 플레이 한 후의 상태가 자신에게 더 불리해지는 게임이다. 즉, 자신이 선공으로 이기면 후공으로 해도 이기며, 후공으로 지면 선공으로 해도 지고, 자신이 3번 행동을 하고 시작하면 훨씬 불리한 상태로 시작하..

BOJ 1989 - 부분배열 고르기 2

문제 링크 : https://www.acmicpc.net/problem/1989 문제 풀이 수열에 있는 각 수 별로 그 수가 최솟값인 최대 배열을 잡을 수 있으면 문제를 풀 수 있다. 옛날에 풀었던 문제가 생각났고, 풀이가 바로 생각났다. 어떠한 수열 조각에 대해서 최솟값을 잡는다. 그럼 그 때 그 최솟값에 대한 값은 그 값 * 수열 조각의 구간합이다. 이때 다른 임의의 값은 그 최솟값을 포함하면 그 값이 최솟값이 될 수 없다. 따라서 수열 조각에서 최솟값 부분을 빼면서 수열을 쪼갤 수 있다. 이런식으로 수열을 계속 쪼개나가면서 값을 구하면 된다. 구간 최솟값과 구간 합은 둘다 segment tree를 이용하여 구할 수 있다. 그리고 구현이 더 쉬운 다른 풀이가 생각났다. 결국 수열의 모든 값에 대해서 ..

랜덤 플레 디펜스 튜토리얼

Project - Random Platinum Defense. 당신은 플레티넘 문제를 한 시간 안에 풀 수 있습니까? 그 어떤 플레티넘 문제라도? 플로우, 기하, 혹은 문자열이라도? 정수론, 애드 혹, 혹은 RPG EXTREME 이라도? 기본기가 약한 나를 위한! 문제를 편식해서 푸는 나를 위한! 문제를 끝까지 마무리 짓는 능력이 부족한 나를 위한! 문제를 푸는 속도가 느려진 나를 위한! 랜덤 플레 디펜스! 지금 바로 시작합니다! 실행 방법 1. sovled.ac 를 이용해 랜덤한 플레티넘 단계의 문제를 선정한다. 2. 한시간(조정 가능) 동안 문제 읽기 시작부터 해결까지 마무리 짓는다. 3. 만약 일정 시간 동안 풀이를 떠올리지 못한다면 태그를 보고. 고민하고, 풀이를 보고 업솔빙을 진행한는 것을 순차..

Semi Game cup 2 개최 후기글 (문제별 후기 포함)

전체 후기 원래는 이번에도 5/18 부근에 열고 싶었지만, 시간이 충분하지 않아 미루게 되었고, 결국 방학 기간에 대회를 개최하게 되었다. 이번 대회에서 내가 중점적으로 생각한 것은 "형식적". 지난번 대회는 진짜 충동적으로 연 대회이기 때문에, 이 대회를 계속 이어나가려면 좀 더 대회스럽게 틀을 잡아볼 필요가 있다고 생각했다. 문제 아이디어들을 좀 준비하고, 제일 먼저 생각한 것은 후원. 후원이 있다면 상품이 좋아지게 되고, 그러면 많은 참가자가 생길 수밖에 없다. 또한, 지난번 대회부터 아무런 대가 없이 나를 도와준 분들이 정말 너무나도 고맙기 때문에 검수 기념품도 정말 챙겨드리고 싶었다. 다양한 준비와 노력 끝에 NEXON 측에서 후원을 결심해 주셨다. 이 글에서도 다시 한번 감사드립니당. 이번 대..