본문 바로가기

Algorithm/B. Basic Algorithms

(10)
18. Implementation 구현(Implementation)은 문제의 상황에 맞게 코드를 짜는 가장 기본적인 문제 해결 방법이다. 엄밀히 말하면 거의 모든 문제(구현 없이 풀 수 없는 극소수의 문제가 존재하지만, 정답이 항상 정해져 있거나 넌센스 문제인 경우 말고는 사실상 가능성이 없다)에는 구현이 필요하지만, 보통 구현 문제라고 하면 문제를 풀기 위한 알고리즘에 비해 구현 자체가 문제 해결의 주를 이루는 문제를 말한다. 구현에 대한 설명은 사실 이것밖에 없다. 구현 연습은 직접 문제를 풀어 보면서 하는 것이 가장 효과적이다. [연습문제] BOJ 2438. 별 찍기 - 1 (Bronze III) 더보기 유명한 구현 문제이다. 중첩 반복문을 이용해서 별을 출력하면 된다. BOJ 10818. 최소, 최대 (Bronze III) 더보기..
17. Basic Algorithms Intro 코딩 문제를 풀 때 사용되는 다양한 알고리즘을 배우기 위해서는 기본적인 문제 해결 방법에 대해 알아야 한다. 기본적인 문제 해결 방법으로 다음과 같은 것들을 생각할 수 있다. 구현(Implementation)은 문제에서 요구하는 것을 직접 실행하는 것이다. 보통 구현 문제라고 하면 코딩이 문제 해결의 대부분을 차지하는 문제를 의미한다. 완전 탐색(Brute Force)은 문제의 조건에 맞는 가능한 모든 경우를 다 확인하면서 답을 구하는 것이다. 입력의 범위가 작은 경우 이 방법으로 문제를 풀 수 있는 경우가 많이 존재한다. 시뮬레이션(Simulation)은 문제의 상황이 시간에 따라 변하는 경우 이 변화를 직접 구현해서 문제를 해결하는 데 이용하는 것이다. 구현의 한 종류로 볼 수도 있다. 그리디(Gre..