알고리즘 공부 사이트/문제 추천

제가 알고리즘을 공부하면서 주로 사용하는 사이트와 애용하는 문제 셋을 정리해놓은 글입니다. 아직 뉴비라 AtCoder나 TopCoder같은건 써본적이 없으니 양해 부탁드립니다.

Online Judge

  • Baekjoon Online Judge(BOJ, 링크) : 정말 많은 문제, 정말 넓은 스펙트럼 등의 특징을 가졌습니다. 알고리즘을 공부하기 위한 국내 사이트 중에서는 이보다 더 좋은 사이트는 아직 보지 못했습니다.
  • oj.uz(링크) : 각국의 올림피아드 문제들이 많이 있습니다. 더 높은 레벨에서 xOI류의 대회를 준비하시고 싶다면 이 사이트를 추천드립니다.
  • Codeforces(링크) : 가끔 일어나는 몇 가지 사건을 제외하면 적당한 문제 수준을 꾸준히 유지하고 있습니다. 추가로 출제자의 풀이까지 제공됩니다. 주기적으로 대회가 열리기 때문에 전세계에서 자신의 위치가 어느정도인지 알 수 있습니다. 커뮤니티에도 유용한 정보가 많이 있습니다.
  • CodeUp(링크) : C언어 공부 용도 외에는 쓰지 마세요. 그 시간에 BOJ를 푸는것이 이득입니다.
  • TopCoder, AtCoder : 아직 참가를 해보지 않아서 잘 모르겠습니다.

Problem Set

  • 백준 단계별 문제(링크) : 입문용으로 좋습니다.
  • KOI(링크) : 알고리즘이 취미인 평범한 고등학생의 입장에서 보면 KOI만큼 좋은 연습 셋은 많이 없습니다.
  • COCI(링크) : 5~6문제로 구성이 되어있습니다. 2개 대회 문제를 2인 1팀으로 돌아보니 꽤 좋습니다. 공식 풀이가 제공이 되고, 유저들이 제출한 소스코드도 볼 수 있습니다.
  • IOI(링크) : 어렵지만 정말 재밌고 아름다운 문제들입니다. 독특한 아이디어를 요구하는 문제들을 많이 볼 수 있습니다.
  • ICPC Korea Regional(링크) : 3인 1팀 연습 돌기에 적절한 셋입니다.

Blog

  • justiceHui 블로그(링크) : 제 블로그입니다.ㅎㅎ
  • koosaga님 블로그(링크) : koosaga님 블로그입니다. 다양한 고난도 문제에 대한 풀이와 여러 알고리즘들이 있습니다.
  • myungwoo님 블로그(링크) : IOI, ICPC, APIO 등등 국제 대회 문제 풀이가 있습니다.
  • kks227님 블로그(링크) : 기초적인 알고리즘부터 어려운 알고리즘까지 다양한 알고리즘을 다루고 있습니다.

Posting

  • Dynamic Programming Type(링크) : 다양한 DP문제 종류를 정리해놓은 글입니다.
  • HLD-it can be simple(링크) : HLD를 비교적 간단하게 구현합니다.
  • Everything About SegTree(링크) : 세그먼트 트리의 다양한 활용법입니다.
  • 더불어민규당 팀노트(링크)
  • MolaMola 팀노트(링크)