본문 바로가기

COMPUTER SCIENCE/Python

코딩 테스트 준비하기 _ Python3

1. 비전공자의 코딩 테스트 준비 _ 어떻게 준비할 것인가?

개발자로 커리어 전환을 위한 코딩 테스트 준비를 시작하였습니다. 어느덧 테스트를 10일가량 남기고 급하게 준비하기 시작하였는데요, 아직도 자료구조와 알고리즘에 대한 개념 숙지조차 되지 않아서 걱정입니다. 하지만, 시작이 반이라는 마음으로 코딩 테스트 준비를 해보고자 합니다. 그렇다면. 코딩 테스트... 어떻게 준비해야 할까요?

 

조사해본 결과 프로그래머스 레벨 2~3 수준의 문제가 4개 혹은 5개 정도 출제된다고 합니다. 레벨 1 수준의 문제들은 기본적인 문법을 이용하면 충분히 풀어볼 수 있는 문제들인 것 같습니다. 그래도 레벨 1 수준이 한 개는 나오겠죠? 저의 전략은 다음과 같습니다.

 

  • 알고리즘 및 자료구조 개념 학습 빠르게 진행하기
  • 레벨 1 수준의 문제를 10개 정도 풀고, 반복하여 기본 문법을 가볍게 다룰 정도로 만들기
  • 2~3 레벨 문제 양치기 하고 하루 전에 복습 진행하기

 

* 파이썬이 처음이라면? _ 파이썬 기본 문법 배우러 가기

 

[Intro] 파이썬 미리보기

* 파이썬과 라이브러리 설치하기 파이썬과 라이브러리 설치하기 1. 파이썬이란? 파이썬은 고급 프로그래밍 언어로, 다양한 윈도즈에서 동작 가능합니다. 그리고 파이썬은 비영리 재단이 관리하

hookspedia.tistory.com

 

자, 한번 해봅시다.

2. 코딩 테스트 준비 목록 _ 기초 문법 & 자료 구조 개념 문제

[1] 배열과 반복문 숙지하기 _ [로또 관련 문제]

[2] 문자열 처리 함수 숙지 _ [문자열 관련 문제]

[3] 배열 원소 추가&삭제 함수 숙지 _ [약수 문제]

[4] 반올림 함수 숙지 _ [사칙연산 기능 문제]

[5] 리스트 관련 유용 함수 _ [리스트 스택/큐 문제]

[6] DFS 및 BFS 기본 응용문제 _ 방문 순서 출력 

3. 코딩 테스트 실전 목록

어느덧 알고리즘 개념이 조금은 잡히기 시작하는데요, 코딩 테스트 실전을 위해서 기출문제 중 자주 출제되는 유형을 빈도수 별로 다음과 같이 정리하겠습니다. 일반적으로 70% 이상의 문제를 해결해야 합격이 된다고 하니 해당 기출을 최소한 한 문제 이상 접하고 시험에 임하여야겠습니다. 

 

순서대로 BFS/DFS , 그리디(greedy) 기법, 정렬, 다이내믹 프로그래밍, 이진 검색, 최단 경로 검색  순서입니다. 

 

허허허... 시간이 없는 관계로 아주 유용한 사이트를 소개하겠습니다. 양치기로 알고리즘 문제 해결하고 합격합시다!

 

* 프로그래머스 레벨 2~3 문제 풀어보기!!!

 

코딩테스트 연습

기초부터 차근차근, 직접 코드를 작성해 보세요.

programmers.co.kr

 

 

모두 성공하세요~!

성공 기원

 

* 추천 문제 리스트

 

응용문제 1 _ 타겟 넘버

 

코딩테스트 연습 - 타겟 넘버

n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+

programmers.co.kr

 

응용문제 2 _ 프린터

 

코딩테스트 연습 - 프린터

일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린

programmers.co.kr

응용문제 3 _ 가장 큰 수

 

코딩테스트 연습 - 가장 큰 수

0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰

programmers.co.kr

응용문제 4 _ 가장 먼 노드

 

코딩테스트 연습 - 가장 먼 노드

6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3

programmers.co.kr

응용문제 5_ 소수 찾기

 

코딩테스트 연습 - 소수 찾기

한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이

programmers.co.kr

응용문제 6_  더 맵게

 

코딩테스트 연습 - 더 맵게

매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같

programmers.co.kr

응용문제 7_  전화번호 목록

 

코딩테스트 연습 - 전화번호 목록

전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조

programmers.co.kr

응용문제 8_  피보나치 수

 

코딩테스트 연습 - 피보나치 수

피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수 입니다. 예를들어 F(2) = F(0) + F(1) = 0 + 1 = 1 F(3) = F(1) + F(2) = 1 + 1 = 2 F(4) = F(2) + F(3) = 1 + 2 = 3 F(5) = F(3) + F(4) =

programmers.co.kr

응용문제 9_  하노이의 탑

 

코딩테스트 연습 - 하노이의 탑

하노이 탑(Tower of Hanoi)은 퍼즐의 일종입니다. 세 개의 기둥과 이 기동에 꽂을 수 있는 크기가 다양한 원판들이 있고, 퍼즐을 시작하기 전에는 한 기둥에 원판들이 작은 것이 위에 있도록 순서대

programmers.co.kr

응용문제 10_  네트워크

 

코딩테스트 연습 - 네트워크

네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있

programmers.co.kr