728x90
SMALL

취준시절/프로그래머스 21

[프로그래머스] 2018 KAKAO BLIND RECRUITMENT - [3차] 압축

이건 배열 슬라이싱만 잘 활용한다면 쉬운 문제 :) 카카오 문제 재밌다 ㅎㅎㅎㅎㅎ 구웃 그리고 나는 dictionary라는 배열에 A ~ Z까지 넣어 초기화 해준 다음, index값에 접근하여 해당 값을 answer에 넣어주었다. !! def solution(msg): answer = [] dictionary = [chr(i) for i in range(65,91)] w=0 for c in range(len(msg)+1): current = msg[w:c] if c ==len(msg): answer.append(dictionary.index(current)+1) break wc = msg[w:c+1] if wc not in dictionary: dictionary.append(wc) answer.appe..

[프로그래머스] 2018 KAKAO BLIND RECRUITMENT - [3차] 방금그곡

일치하는 음악이 여러개라면 ??? 재생시간이 제일 긴 음악제목 반환 재생시간마저 같으면??? 먼저 입력된거반환 이 조건을 처리 안해줘서 테스트 케이스 두개를 계속 통과 못했다 ;_; 그래서 여러개일 경우를 고려하여 result라는 배열에 일치하는것들을 입력된 순서 확인을 위한 index, 재생시간 확인을 위한 minutes, 출력시 필요한 title을 묶어서 넣어주었다. result의 개수가 여러개이면 result를 처음에는 재생시간이 긴 순서대로 정렬해야하니 -를 붙여서 -x[1]로 정렬한다. 그리고 재생시간이 같다면 먼저 입력된 것을 반환해줘야하니까 x[0]자리에 있는 index순으로 정렬되게 한 다음에 return을 해주었다.!!!!! 구우웃 !!!!!! def convert(melody): mel..

[프로그래머스] 2018 KAKAO BLIND RECRUITMENT - [3차] 파일명 정렬

x[1].lower()로 비교한 이유 !!! 만약 x[1].lower()가 아닌 x[01로 정렬할 경우 "img1.png", "IMG01.GIF" 가 "IMG01.GIF","img1.png"로 출력된다 문제에서 head가 대소문자 제외시 같고 number도 같다면 입력된 순서대로 그대로 출력해야한다고했다. 그래서 대소문자 구분없으니까 애초에 대소문자 무력화시키기위해 .lower()나 .upper()로 정렬시작한다. def solution(files): split_file = [] for f in files: head = '' number = '' numcheck = False for i in f: if i.isdigit(): number += i numcheck = True elif numcheck ==..

[프로그래머스] 소수찾기 - Python

permutations 의 활용이 정말 중요했음 ! 증말 유용한 내장함수 ... !! 잊지말기!! 저번에도 썼었는데 까먹음 ㅎㅎ... 순열만 잘 만들어놓으면 소수만 찾으면 되는 문제 !! from itertools import permutations def solution(numbers): answer = list() numlist = [i for i in numbers] arr = list() for i in range(1, len(numlist) + 1): arr += list(permutations(numlist, i)) arrangelist = [int(i) for i in list(map(''.join, arr))] for i in arrangelist: if i < 2: continue che..

[프로그래머스] 구명보트 - Python

탐욕법 문제 !!!! 탐욕법은 그냥 보자마자 자동적으로 " 정렬 " !!!!! 각 근데 생각보다 쫌 오래걸렸다 푸는데.......🥺 처음에 바보같이 정렬해두고 최대 2명까지 보트 태우는지도 모르고 작은값대로 다 넣어서 계산했는데 계속 틀리다해서 대체 왜 틀렸냐고 ㅠㅠ 난 바보라고 그랬는데... 문제 다시 읽어보니 떡하니 한번에 최대 2명씩 탈수밖에...없다는...... 문제를 잘 읽자 ^^ def solution(people, limit): answer = 0 people.sort() start = 0 end = len(people) -1 while start

728x90
LIST