python75 [코딩테스트 오답 노트] Python find() 반환값 착각 (원하는 문자열 찾기) 1. 문제 정보문제 이름: 원하는 문자열 찾기플랫폼: 프로그래머스언어: Python난이도: LV0소요 시간: 약 10분첫 시도 결과: 논리 오류2. 문제를 어떻게 해석했는가? (사고 시작점)문제를 한 문장으로 요약하면?문자열 myString 안에 pat이 부분 문자열로 존재하면 1, 없으면 0을 반환하는 문제입니다.단, 대소문자를 구분하지 않습니다.이해한 핵심 조건myString 안에 pat이 포함되는지 확인대소문자 구분 없음이 문제는 어떤 사고를 요구하는가?집합 사고 (조건 정의, 포함 여부)문자열 포함 여부 판단👉 여기서 이미 오해가 있었는가? find() 함수가 True / False를 반환한다고 착각했습니다.문자열 비교 전에 대소문자를 통일해야 한다는 점도 바로 떠올리지 못했습니다 3. 내가 처.. 2026. 3. 13. [Python 코딩테스트 오답노트] 조건에 맞게 수열 변환하기 2 | 배열 상태 변화 시뮬레이션 1. 문제 정보문제 이름: 조건에 맞게 수열 변환하기 2플랫폼: 프로그래머스언어: Python난이도:LV0소요 시간: 약 20분첫 시도 결과: 논리 오류문제 출처: 프로그래머스 - 조건에 맞게 수열 변환하기 22. 문제를 어떻게 해석했는가? (사고 시작점)문제를 한 문장으로 요약하면?배열의 값을 특정 규칙으로 계속 변환하다가배열이 더 이상 변하지 않을 때의 반복 횟수를 구하는 문제입니다.이해한 핵심 조건배열의 각 원소에 대해 다음 규칙을 적용합니다.값이 50 이상이고 짝수 → 2로 나누기값이 50 미만이고 홀수 → 2배 후 +1나머지는 그대로 유지이 과정을 반복했을 때arr(x) == arr(x+1)이 되는 가장 작은 x를 구해야 합니다.이 문제는 어떤 사고를 요구하는가?절차적 사고 (흐름, 반복, 상태.. 2026. 3. 13. [Python 코딩테스트 리팩토링]리스트 길이에 따라 합과 곱을 계산하는 문제 (sum vs product) 코딩 테스트를 풀다 보면조건에 따라 다른 연산을 수행하는 문제가 자주 등장합니다.이번 글에서는 다음과 같은 문제를 리팩토링 관점에서 분석해보겠습니다.리스트 길이에 따라 합(sum) 또는 곱(product) 을 계산하는 문제반복문 기반 코드 → Pythonic 코드로 개선1. 문제 소개정수 리스트 num_list가 주어집니다.리스트 길이가 11 이상이면 모든 원소의 합을 반환합니다.리스트 길이가 10 이하이면 모든 원소의 곱을 반환합니다.예시입력[3,4,5,2,5,4]출력2400설명3 × 4 × 5 × 2 × 5 × 4 = 2400.문제 출처:코딩테스트\코딩기초트레이닝\길이에따른연산2. 문제 접근 방법이 문제는 크게 두 단계로 나눌 수 있습니다.리스트 길이 확인길이에 따라 다른 연산 수행길이 ≥ 11 → .. 2026. 3. 12. [Python 코딩테스트 리팩토링] 숫자를 1로 만드는 연산 줄이기 (log n / 이진수) 1. 문제 소개오늘은 코딩 테스트에서 자주 등장하는숫자를 특정 조건까지 줄이는 문제를 리팩토링해보겠습니다.문제는 다음과 같습니다.정수 리스트 num_list가 주어질 때각 숫자를 1이 될 때까지 다음 연산을 반복합니다.짝수 → 2로 나누기홀수 → 1을 빼고 2로 나누기그리고 모든 숫자가 1이 될 때까지 수행한 연산 횟수의 합을 구하는 문제입니다.### 예시num_list = [10]### 연산 과정10 → 5 → 2 → 1### 총 연산 횟수3문제 링크: 코딩테스트연습\코딩기초트레이닝\1로만들기2. 문제 접근 방법처음에는 문제에서 설명한 그대로짝수와 홀수를 나누어 처리했습니다.짝수이면 num // 2홀수이면 (num - 1) // 2이 과정을 숫자가 1이 될 때까지 반복했습니다.3. 처음 작성한 코드de.. 2026. 3. 12. [코딩테스트 Python 리팩토링]조건이 많은 리스트 변환을 리스트 컴프리헨션으로 개선하기 1. 문제 소개리스트 컴프리헨션은 Python에서 가장 많이 쓰이는 문법입니다.하지만 이런 경험 없으신가요?“한 줄로 줄였는데 더 읽기 어려워졌다…”👉 조건이 많아지는 순간리스트 컴프리헨션은 오히려 가독성을 망칩니다. 문제는 다음과 같습니다정수 배열 arr가 주어집니다. arr의 각 원소에 대해 값이 50보다 크거나 같은 짝수라면 2로 나누고, 50보다 작은 홀수라면 2를 곱합니다. 그 결과인 정수 배열을 return 하는 solution 함수를 완성해 주세요.배열이 주어지면 위 조건에 따라 값을 변환하는 문제입니다.### 예시arr = [1, 2, 3, 100]### 결과[2, 2, 6, 50]이 문제를 두 가지 방식으로 풀어보겠습니다.1. 반복문 방식(기존 방식)2. 리스트 컴프리헨션 방식문제 출처.. 2026. 3. 12. 코딩 테스트에서 꼭 알아야 하는 Python 라이브러리 5가지 코딩 테스트를 준비하다 보면Python에서 제공하는 라이브러리(Library)를 사용하는 문제가 자주 등장합니다.특히 Python은 기본 라이브러리가 매우 강력하기 때문에라이브러리를 알고 있는 것만으로도 코드가 훨씬 간결해질 수 있습니다.이번 글에서는라이브러리란 무엇인지Python에서 라이브러리를 사용하는 방법코딩 테스트에서 자주 사용하는 라이브러리를 정리해보겠습니다.1. 라이브러리(Library)란 무엇인가?라이브러리는 이미 만들어진 기능을 모아놓은 코드 모음입니다.쉽게 말하면우리가 직접 구현하지 않아도 사용할 수 있는 기능이라고 생각하면 됩니다.예를 들어 다음과 같은 기능을 직접 구현할 수도 있습니다.정렬조합 계산누적합 계산힙(우선순위 큐)하지만 Python에는 이런 기능들이 이미 라이브러리로 구현되.. 2026. 3. 11. 이전 1 ··· 7 8 9 10 11 12 13 다음