[프로그래머스] / [Level 1] / [Python] 둘만의 암호
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/155652 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 a(97) ~ z(122) 까지의 숫자로 표현하기 위해 atoz 함수를 생성하였다. 문자 a에서 5만큼 뒤에 있는 알파벳 [b, c, d, e, f] 들을 큐에 저장하도록 하였고, 큐에 저장된 알파벳이 skip 문자열에 있으면 pop후 새로운 문자열을 append 하도록 구성하였다. from collections import deque def atoz(i: int): return (i..
[프로그래머스] / [Level 1] / [Python] 대충 만든 자판
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/160586 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr keymap을 탐색하면서 문자의 인덱스를 딕셔너리에 추가해준다. 여기에서 원소의 길이가 '
[프로그래머스] / [Level 1] / [Python] 문자열 나누기
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/140108 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 딕셔너리를 사용하여 해결하였다. 첫 글자와 다른 글자를 구별하기 위해 start 변수에 첫 글자를 기록하도록 하였다. from collections import defaultdict def solution(s): answer = 0 start = None dd = defaultdict(int) for s_ in s: if start == None: start = s_ if start == s_:..
[프로그래머스] / [Level 1] / [Python] 숫자 짝꿍
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/131128 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이는 쉬웠는데 시간 초과 때문에 많은 시간을 소비했다. 고민 끝에 원인은 정수형을 문자열로 변경하는 곳에서 나타난다는 것을 알 수 있었다. 문제의 제한사항 중 자릿수는 최대 3,000,000 까지 주어지는데, 이 3백만자를 정수형에서 문자열로 변경하려면 상당히 많은 시간이 필요하다. import time a = ["3"] * 3000000 t0 = time.time() a = ''.joi..
[프로그래머스] / [Level 2] / [Python] 디펜스 게임
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/142085 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 무적권 스킬은 heap에 저장되어 있는 원소에 사용한다. 적이 많은 라운드에서 무적권 스킬을 사용해야한다. 반대로 적이 적은 라운드에선 heappop을 사용하여 남은 병사 n과 겨룬다. from heapq import heappush, heappop def solution(n, k, enemy): answer = 0 heap = [] for idx, e in enumerate(enemy): he..
[프로그래머스] / [Level 1] / [Python] 옹알이 (2)
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/133499 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(babbling): answer = 0 can = ["aya", "ye", "woo", "ma"] for idx in range(len(babbling)): can = ["aya", "ye", "woo", "ma"] previous = "" while True: for c in can: if babbling[idx][:len(c)] == c and previous != c..
[프로그래머스] / [Level 1] / [Python] 기사단원의 무기
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def divisor(num): s = set() for i in range(1, int(num**(1/2))+1): if num % i == 0: s.add(num//i) s.add(i) return len(s) def solution(number, limit, power): answer = 0 for n in range(1, number+1): if divisor(n) > limit: ans..
[프로그래머스] / [Level 1] / [Python] 과일 장수
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/135808 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(k, m, score): answer = 0 score.sort(reverse=True) div= len(score)//m for i in range(div): answer += min(score[m*i:m*i+m]) * m return answer
욱근욱
'Coding Test/프로그래머스' 카테고리의 글 목록 (3 Page)