[정처기 실기 기출] 2024 3회 : 파이썬 코드 분석 예상 문제
본문 바로가기

Computer Science/정보처리기사

[정처기 실기 기출] 2024 3회 : 파이썬 코드 분석 예상 문제

728x90
반응형

 

🧠 정보처리기사 실기 대비: 파이썬 리스트 조작 예제 5선

정보처리기사 실기에서 자주 출제되는 리스트 관련 파이썬 코딩 문제를 엄선하여 소개합니다.
슬라이싱, 조건문, 반복문, 정렬 등 실전에서 꼭 필요한 개념을 익힐 수 있어요!


✅ 예제 1. 리스트 뒤집기 후 홀수 인덱스 합 구하기

def reverse_and_sum(lst):
    for i in range(len(lst) // 2):
        lst[i], lst[-i - 1] = lst[-i - 1], lst[i]
    return sum(lst[1::2])

lst = [3, 1, 4, 1, 5, 9]
print(reverse_and_sum(lst))  # 출력: 12

🔍 해설

  • 리스트를 직접 뒤집는 함수입니다. swap 문법 사용!
  • lst[1::2]는 홀수 인덱스만 추출합니다.
  • 결과 리스트: [9, 5, 1, 4, 1, 3] → 홀수 인덱스 [5, 4, 3]의 합 = 12

✅ 예제 2. 짝수만 제곱 후 내림차순 정렬

def square_even_desc(lst):
    even_squares = [x**2 for x in lst if x % 2 == 0]
    return sorted(even_squares, reverse=True)

lst = [1, 2, 3, 4, 5, 6]
print(square_even_desc(lst))  # 출력: [36, 16, 4]

🔍 해설

  • 짝수만 필터링하고 각각 제곱하여 새 리스트 생성
  • sorted(..., reverse=True)로 내림차순 정렬
  • 자주 출제되는 리스트 내포 + 정렬 조합 문제입니다!

✅ 예제 3. 최대값과 최소값의 인덱스 차이 구하기

def max_min_index_diff(lst):
    max_idx = lst.index(max(lst))
    min_idx = lst.index(min(lst))
    return abs(max_idx - min_idx)

lst = [7, 2, 5, 10, 3]
print(max_min_index_diff(lst))  # 출력: 2

🔍 해설

  • max(lst), min(lst)로 최대/최소값을 찾고,
  • index()로 해당 위치 인덱스를 구한 뒤
  • 인덱스 차이의 절댓값을 반환합니다.
  • 최댓값/최솟값 찾기 + 인덱스 활용을 함께 묻는 유형이에요.

✅ 예제 4. 짝수 인덱스 문자열 이어 붙이기

def join_even_index_strings(lst):
    return ''.join(lst[::2])

lst = ['a', 'b', 'c', 'd', 'e']
print(join_even_index_strings(lst))  # 출력: 'ace'

🔍 해설

  • lst[::2]는 짝수 인덱스(0, 2, 4…)만 가져옵니다.
  • ''.join()으로 문자열들을 한 줄로 이어 붙입니다.
  • 문자열 리스트 다루는 문제도 실기에서 자주 등장합니다!

✅ 예제 5. 중복 제거 후 오름차순 정렬

def dedup_and_sort(lst):
    return sorted(set(lst))

lst = [4, 1, 2, 2, 3, 1]
print(dedup_and_sort(lst))  # 출력: [1, 2, 3, 4]

🔍 해설

  • set()을 사용해 중복 제거
  • sorted()로 오름차순 정렬
  • 간단하지만 중복 제거 & 정렬 로직은 자주 등장해요!

 

 

✨ 마무리 정리: 사용된 주요 함수/문법

예제 사용 함수 및 문법

예제 1 for, range(), swap, sum(), 슬라이싱
예제 2 리스트 내포, 조건문, **, sorted()
예제 3 max(), min(), .index(), abs()
예제 4 슬라이싱, ''.join()
예제 5 set(), sorted() :: 기본값 오름차순

실전에서 마주칠 수 있는 다양한 리스트 문제를 연습하면서, 각 함수의 쓰임과 슬라이싱 등의 기법에 익숙해지는 것이 중요합니다.
도움이 되셨다면 댓글과 공감 부탁드려요 🙌

728x90
반응형