/Python-algorithm

파이썬 알고리즘

Primary LanguagePython

baekjoon-jh05013's-course

baekjoon-단계별로 풀어보기


문제 푸는 방식

특별한 경우를 제외하고, 문제를 푸는데에 시간을 정하지 않으면 문제는 많고 시간은 없기 때문에 효율적이지 않다고 생각한다, 대신 해설을 찾아봤다면 해설을 완전히 이해해야한다고 생각한다

문제의 난이도에 따라 시간을 정해(보통 하루) 문제를 풀고, 시간안에 풀지 못하면 해설을 알아보거나, 주변인에게 묻는다. 해설을 찾아본 문제들은 파일명에 (refer)로 표시하였다

파일명

기본적으로 baekjoon-문제번호.py 가 파일 이름이고, 특수한 경우에 baekjoon-문제번호(경우).py 의 형태이다

경우의 예시를 보면 solved = 푼 문제 solving = 풀고있는 문제 SKIP = 넘긴문제 pypy3 = pypy3로 정답을 맞힌 문제 refer = 해설을 찾아서 정답을 맞힌 문제 refering = 해설을 찾아서 이해하는 단계


파일 구성 정보

문제와 관련된 내용들 ▽

문제와 관련된 내용들(문제를 풀며 구글링한 것들)은 모두 주석으로 주소와 함께 내용을 정리했다

  • 함수 / 관련 개념 등이 있다는 것을 알고 있었지만, 제대로 사용법을 몰랐을 때 - 코드보다 아래에 내용을 두었다
  • 함수 / 관련 개념 등에 대해 전혀 몰랐던 내용, 같은 역할을 하는 다른 방법 등은 - 코드보다 위에 내용을 두었다

시행착오, 분석과 관련된 내용들 ▽

막혔거나, 시간이 걸렸거나, 내 코드가 비효율적이라는 생각이 들거나, 다른 사람의 코드가 궁금했을 때

  • 내가 문제를 풀었을 때 어떻게 생각해서 풀었는지 정리했을 수 있다 - 파일의 가장 위에 두었다
  • 막혔던, 시간이 걸렸던 문제들은 시행착오를 함께두어 문제점들이 뭐였는지, 어떻게 생각했는지에 대한 내용이 있을 수 있다 - 코드보다 아래, 관련 내용보다 아래에 두었다
  • 다른 사람이 어떻게 풀었는지, 다른사람의 코드를 정리했을 수 있다 - 가장 아래에 위치한다

요약

파일안 내용의 위치를 요약하자면 위에서부터,
문제를 풀었을 때 내가 생각한 방법 > 몰랐던 내용 > 코드 > 대충 알고는 있었던 내용 > 시행착오와 분석과 관련된 내용 > 다른사람의 코드(ex https://github.com/jongpark1234 코드)

폴더 구성 정보

온라인 저지사이트에 따라 크게 폴더를 나눴고,

  • 백준은 jh05013 님의 단계별로풀기 문제들을 폴더로 나누고, 아닌 파일들은 그냥 풀어놨다