SWEA D1 풀이 후 배운 점 정리 Python3

 

코딩테스트 준비를 시작하면서 문제 풀이 경험이 부족하다고 느껴 SWEA D1 난이도 문제부터 차근차근 풀기 시작했다.

D1 문제 약 70개를 풀면서 Python 문법 활용과 기본적인 문제 해결 과정에 익숙해지는 것을 목표로 했다.

 

다 풀고 싶었지만 D1 문제 패턴이 갈수록 익숙해져 70 문제 풀이 후 D2로 건너뛰었다

 

입력 처리

- N개 정수 입력

- 숫자를 list로 입력 받기

N = int(input())
arr = list(map(int, input().split()))

 

- 문자열 입력 받기

s = input()

 

- 테스트 케이스 입력 받고 그 갯수만큼 반복

T = int(input())

for tc in range(1, T+1):
    print(f"#{tc}")

 

문자열 정리

- 문자열 분리

s = input().split()

 

- 슬라이싱

word[0:3]

 

- 뒤집기

word[0:3]

 

- 회문 검사

if word == word[::-1]:

 

- in 연산자

문자열 포함 여부를 확인한다

출력은 True/False

if str1 in str2:

 

자료구조 기초

- 리스트

arr = []

arr.append(value)

 

- 딕셔너리 

count = {}

for ch in string:
    if ch not in count:
        count[ch] = 1
    else:
        count[ch] += 1

 

- set 

중복 제거할 때 쓴다

set(arr)

 

 

방향 배열 

- x, y축과 헷갈리지 않도록 조심

dr = [0,1,0,-1]
dc = [1,0,-1,0]

 

문제 유형접근

문자열 포함 여부 in
문자 개수 세기 dictionary
중복 제거 set
배열 전체 탐색 반복문
방향 이동 dr/dc
괄호 검사 stack

 

사용한 주요 Python 문법 

  • input()
  • split()
  • map()
  • list
  • dictionary
  • set
  • sorted()
  • slicing
  • enumerate()
  • max(), min()
  • lambda
  • f-string

총 7일 소요 

D1 문제는 하루 이틀 잡고 다 풀어내는 사람들이 많던데 10개만 해도 피곤하다

'코테' 카테고리의 다른 글

2차원 배열 완전탐색과 해시 기초  (0) 2026.08.08