Coding Test
[그리디 알고리즘] 2847번 게임을 만든 동준이 풀이(파이썬)
안녕하세요. Harry입니다. 본 포스팅의 목적은, 코딩테스트를 준비함에 있어 백준에 제시된 문제 풀이와 스스로 얻은 정보를 정리하고자 합니다. 그러므로 단순히 문제를 푸는 것이 중요한 것이 아니라, 문제를 통해 얻어가는 것이 있어야하기 때문에 접근 방식은 이전 기초 300제를 풀었을 때랑 동일합니다. [접근 방식] - 문제에서 요구하는 역량은 무엇인지? - 알고 있어야하는 지식은 무엇인지? 에 기반하여 풀이하고자 합니다. - 백준 문제 링크입니다. : https://www.acmicpc.net/problem/2847 2847번: 게임을 만든 동준이 학교에서 그래픽스 수업을 들은 동준이는 수업시간에 들은 내용을 바탕으로 스마트폰 게임을 만들었다. 게임에는 총 N개의 레벨이 있고, 각 레벨을 클리어할 때 ..
[그리디 알고리즘] 1758번 알바생 강호 풀이(파이썬)
안녕하세요. Harry입니다. 본 포스팅의 목적은, 코딩테스트를 준비함에 있어 백준에 제시된 문제 풀이와 스스로 얻은 정보를 정리하고자 합니다. 그러므로 단순히 문제를 푸는 것이 중요한 것이 아니라, 문제를 통해 얻어가는 것이 있어야하기 때문에 접근 방식은 이전 기초 300제를 풀었을 때랑 동일합니다. [접근 방식] - 문제에서 요구하는 역량은 무엇인지? - 알고 있어야하는 지식은 무엇인지? 에 기반하여 풀이하고자 합니다. - 백준 문제 링크입니다. : https://www.acmicpc.net/problem/1758 1758번: 알바생 강호 첫째 줄에 스타박스 앞에 서 있는 사람의 수 N이 주어진다. N은 100,000보다 작거나 같은 자연수이다. 둘째 줄부터 총 N개의 줄에 각 사람이 주려고 하는 팁..
[그리디 알고리즘] 11047번 동전0 풀이(파이썬)
안녕하세요. Harry입니다. 본 포스팅의 목적은, 코딩테스트를 준비함에 있어 백준에 제시된 문제 풀이와 스스로 얻은 정보를 정리하고자 합니다. 그러므로 단순히 문제를 푸는 것이 중요한 것이 아니라, 문제를 통해 얻어가는 것이 있어야하기 때문에 접근 방식은 이전 기초 300제를 풀었을 때랑 동일합니다. [접근 방식] - 문제에서 요구하는 역량은 무엇인지? - 알고 있어야하는 지식은 무엇인지? 에 기반하여 풀이하고자 합니다. - 백준 문제 링크입니다. : https://www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (..
[Algorithm] DFS 알고리즘(깊이 우선 탐색)&BFS 알고리즘(너비 우선 탐색)이란?
안녕하세요. Harry입니다. 본 포스팅의 목적은, 코딩테스트를 준비함에 있어 스스로 공부한 지식을 정리하고자 합니다. - 무슨 개념인지? - 개념이 나오게 된 배경은? - 그 개념은 왜 쓰는지? - 장점/단점은 무엇인지? - (유사한 것이 있다면) 서로 차이는 무엇인지? 를 최대한 고려하여 정리해보겠습니다. DFS알고리즘을 이해하기 위해선, 먼저 아래와 같은 사전지식 학습이 필요합니다. 1) 자료구조인 스택/큐에 대한 이해 2) 재귀함수에 대한 이해 3) 그래프(간선 및 노드, 가중치)에 대한 이해 4) 인접행렬 및 인접리스트에 대한 이해 위 내용은 다른 포스팅에서 다뤄보도록 하겠습니다. 1. DFS 알고리즘이란?(what?) 깊이 우선 탐색(DFS, Depth-First-Serach) 알고리즘으로, ..
[Algorithm] 탐욕(Greedy) 알고리즘이란
안녕하세요. Harry입니다. 본 포스팅의 목적은, 코딩테스트를 준비함에 있어 스스로 공부한 지식을 정리하고자 합니다. - 무슨 개념인지? - 개념이 나오게 된 배경은? - 그 개념은 왜 쓰는지? - 장점/단점은 무엇인지? - (유사한 것이 있다면) 서로 차이는 무엇인지? 를 최대한 고려하여 정리해보겠습니다. 1. 그리디 알고리즘이란?(what?) 그리디 알고리즘은, 당장 좋은 것만을 고르는 알고리즘이다. 즉, 당장 주어진 선택지 중에서 눈앞에 보이는 가장 최적의 상황을 고르는 것으로, 그 이후에 발생할 상황을 고려하지 않는다는 것이다. 그러므로 직관적이지만 국소적(local)이므로 결과론적(global)으로 봤을 때 항상 최적의 해답을 보장하지 않는다. 예를 들어, 현재 선택할 수 있는 선택지 중에서 ..
[백준] 1단계 입출력과 사칙연산 풀이_12.28
안녕하세요. Harry입니다. 본 포스팅의 목적은, 코딩테스트를 준비함에 있어 백준에 제시된 문제 풀이와 스스로 얻은 정보를 정리하고자 합니다. 그러므로 단순히 문제를 푸는 것이 중요한 것이 아니라, 문제를 통해 얻어가는 것이 있어야하기 때문에 접근 방식은 이전 기초 300제를 풀었을 때랑 동일합니다. [접근 방식] - 문제에서 요구하는 역량은 무엇인지? - 알고 있어야하는 지식은 무엇인지? 에 기반하여 풀이하고자 합니다. - 백준 문제 링크입니다. : https://www.acmicpc.net/step/1 입출력과 사칙연산 단계 입출력과 사칙연산 www.acmicpc.net 아래 작성된 답안은 제가 직접 작성 후 백준 페이지에서 채점하여 정답으로 인정된 답안입니다. 공식 답안이 아니므로 최적의 해가 아..
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(281~290)_12.23
안녕하세요. Harry입니다. 현재 풀이중인 초보자를 위한 파이썬 300제 풀이를 진행하면서 나름대로 파악했던 문제 출제 의도와 풀이를 작성했습니다. 모든 풀이는 직접 Pycharm을 통해 에러없이 출력됨을 확인 후 작성했습니다. 초보자를 위한 파이썬 300제 풀이는 Wikidocs에 무료로 배포된 전자책을 활용했습니다/ https://wikidocs.net/book/922 [학습목표] 1. 각 문제별 요구하는 역량(출제의도)이 무엇인지 파악할 수 있다. 2. 각 문제별 요구하는 기술 및 기능을 활용하여 문제를 해결할 수 있다. 281 ~ 290 281 클래스 정의 다음 코드가 동작하도록 차 클래스를 정의하세요. - 요구역량 : 클래스를 생성할 수 있는가? >> car = 차(2, 1000) >> car..
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(271~280)_12.23
안녕하세요. Harry입니다. 현재 풀이중인 초보자를 위한 파이썬 300제 풀이를 진행하면서 나름대로 파악했던 문제 출제 의도와 풀이를 작성했습니다. 모든 풀이는 직접 Pycharm을 통해 에러없이 출력됨을 확인 후 작성했습니다. 초보자를 위한 파이썬 300제 풀이는 Wikidocs에 무료로 배포된 전자책을 활용했습니다/ https://wikidocs.net/book/922 [학습목표] 1. 각 문제별 요구하는 역량(출제의도)이 무엇인지 파악할 수 있다. 2. 각 문제별 요구하는 기술 및 기능을 활용하여 문제를 해결할 수 있다. 271 ~ 280 271 Account 클래스 은행에 가서 계좌를 개설하면 은행이름, 예금주, 계좌번호, 잔액이 설정됩니다. Account 클래스를 생성한 후 생성자를 구현해보세..