반응형
Chapter 02. 자료구조 문제풀이
리스트 연습문제 총정리 (01·02·03)
주요 개념 요약
✔ 리스트 기반 문제 해결력 강화
- 리스트의 길이, 슬라이싱, 반복문을 종합적으로 활용
- 조건문과 결합하여 원하는 값 필터링
- 난수(random)를 사용하여 실전 데이터 시뮬레이션
✔ 반복문(for / while)을 활용한 누적 처리
- 특정 조건을 만족하는 원소만 연산
- 리스트 요소 합계/평균 구하기
- 리스트를 순회하여 특정 패턴 찾기
✔ 리스트와 딕셔너리를 혼합하여 사용하는 연습
- 문제 03에서는 입장료 표를 기반으로 가격 계산
- 난수를 이용해 나이 분포를 랜덤 생성
- 조건에 따라 금액 합산
코드 예시 정리
연습문제 리스트(01) — 기본 리스트 처리
문제 예시
주어진 리스트에서 짝수만 출력하시오.
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for n in nums:
if n % 2 == 0:
print(n)
연습문제 리스트(02) — 리스트 연산 & 조건 처리
문제 예시
리스트에서 특정 조건을 만족하는 요소들의 합계를 구하시오.
scores = [55, 72, 88, 90, 45, 67]
total = 0
for s in scores:
if s >= 70:
total += s
print("70점 이상 점수 합:", total)
연습문제 리스트(03) — 난수 기반 입장료 계산
| 나이 | 입장료 |
| 0~3세 | 무료 |
| 4~13세 | 2,000원 |
| 14~18세 | 3,000원 |
| 19세 이상 | 5,000원 |
풀이 코드 예시
import random
total_fee = 0
for _ in range(100):
age = random.randint(0, 70)
if age <= 3:
fee = 0
elif age <= 13:
fee = 2000
elif age <= 18:
fee = 3000
else:
fee = 5000
total_fee += fee
print("오늘 하루 총 입장료:", total_fee, "원")
* 이 글은 제로베이스 데이터사이언스 파트타임 스쿨의 강의 자료 일부를 발췌하여 작성되었습니다.
💡 생각 정리
이번 세 가지 연습문제를 통해 리스트가 단순한 저장 구조가 아니라, 조건 처리·반복문·연산·시뮬레이션까지 모든 로직의 기반이 된다는 것을 다시 느꼈다. 난수와 리스트를 결합하는 문제에서는 실제 데이터 처리를 모델링하는 감각도 배울 수 있었다. 특히 03번 문제처럼 실제 입장객의 나이를 랜덤으로 생성해 계산하는 과정은 실무 데이터 분석과도 연결된다는 점이 흥미로웠다. 반복문 흐름을 머릿속에서 그리며 리스트를 다루는 능력이 훨씬 단단해졌다.
🚀 적용점
- 실제 프로젝트에서 고객 연령대·구매 데이터 등을 리스트로 저장하여 통계 계산 가능
- 난수(Random)를 이용해 시뮬레이션 기반 테스트 데이터 생성에 활용
- 딕셔너리와 리스트를 조합하면 간단한 요금 정책·규칙 기반 시스템 구현에 응용 가능
- 반복문 + 조건문 로직을 강화하여 앞으로 나오는 알고리즘 문제에서도 활용 가능
반응형
'데이터' 카테고리의 다른 글
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -18 (0) | 2025.12.15 |
|---|---|
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -17 (0) | 2025.12.14 |
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -15 (0) | 2025.12.12 |
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -14 (0) | 2025.12.11 |
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -13 (0) | 2025.12.10 |