본문 바로가기

프로그래머스117

(프로그래머스) lv.1 문자열 나누기 https://school.programmers.co.kr/learn/courses/30/lessons/140108 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 def solution(s): answer = 0 x_cnt, y_cnt = 0, 0 x = "" for i in s: if not x: x = i # x 값이 정해지지 않았을때 x 값을 정함 if x == i: x_cnt += 1 # x 와 같은 글자가 나올때 x_cnt 카운트 else: y_cnt += 1 # x 와 다른 글자가 나올때 y_cnt 카운트 # 두 횟수가 같아 지면 an.. 2024. 1. 15.
(프로그래머스) lv.1 가장 가까운 같은 글자 https://school.programmers.co.kr/learn/courses/30/lessons/142086 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 def solution(s): answer = [] t_dict = {} for i, w in enumerate(s): # 딕셔너리 키에 현재 문자가 포함되어 있지 않다면 if w not in t_dict: answer.append(-1) t_dict[w] = i # 키: 현재 문자, 값: 현재 인덱스인 딕셔너리 추가 else: # 현재 인덱스 - 지금까지 저장한 가장 가까운 같은 문자.. 2024. 1. 15.
(프로그래머스) lv.1 크기가 작은 부분문자열 https://school.programmers.co.kr/learn/courses/30/lessons/147355 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 def solution(t, p): answer = 0 for i in range(len(t) - len(p) + 1): # t를 오른쪽으로 읽어 나가면서 현재 인덱스 부터 p의 길이 만큼 잘라내고 정수로 변환 int_t = int(t[i : len(p) + i]) # 잘라낸 t의 정수 값이 p의 정수보다 크거나 작다면 카운트 if int_t 2024. 1. 15.