목록PS (Problem Solving) (12)
주니어 개발자의 대나무숲
C++의 가장 자주 사용되는 라이브러리 중 하나인 STL(Standard Template Library)에 대해 한 번쯤은 들어보셨을 겁니다. 그런데 왜 PS를 공부하기 전에 STL의 사용법을 익혀야 할까요? 그 이유는 문제를 푸는 데 필요한 알고리즘들을 빠르게 구현할 수 있기 때문입니다. 공부를 하다 보면, 더 빠른 알고리즘을 위해 구현이 너무 오래 걸리는 알고리즘을 선택하는 오류를 범하는 경우가 있습니다. 하지만, 제한된 시간 내에 많은 문제를 풀어야 하는 대회 상황에서는 구현에 드는 시간도 고려해야 합니다. 문제를 푸는 시간의 대부분은 생각해낸 알고리즘을 '구현'하는 시간이기 때문입니다. 문제의 제한시간은 대체적으로 5초 이내이기 때문에 작성한 프로그램이 답을 출력해낼 때까지 걸리는 시간은 구현에 ..
PS를 배우기 전에 미리 알아두면 좋은 사항들이 있습니다.PS를 해본 사람들에겐 당연하지만, 처음 접하는 사람들에겐 전혀 당연하지 않은 사항들이라고 생각해 따로 글을 쓰게 되었습니다. 저 또한 처음엔 이런 점들을 잘 몰랐구요! PS를 처음 접하시는 분들에게 조금이라도 도움이 되길 바랍니다. 1. 전역변수 여태까지는 전역변수를 사용하면 코드 재사용시 프로그램의 안정성에 좋지 않다는 등의 이유로, 전역변수를 가급적이면 사용하지 않는 것이 좋다고 배워왔습니다. 하지만, PS를 할 때는 전역변수를 적극적으로 사용하는 것이 좋습니다. 예를 들어 보겠습니다. 어떤 배열(arr)이 있을 때, s번째 칸부터 e번째 칸까지의 합을 구하는 함수 sumOfArray가 있다고 해보겠습니다. 그러면, 함수 sumOfArray는..