전체 글 180

[코테준비 - python] 올바른 괄호 level2 - 개발자 배찌

첫 시도! >> 5,11,17실패, 효율성2 실퍠 문제점 : 첫 시작이 ‘)’일때 false 로 잘생각해냈으나, 마지막끝이 ‘(’일때도 false임을 생각하지 못함. 마지막에 ( ) 가 됬을 때, stack에서 pop을 하고나서, 앞쪽에 있던 괄호를 생각을 하지 않고, 뒤에 쌓인것만 비교하게됨. 첫 시도_문제의코드 ㅇ_ㅇ def solution(s): answer = True stack = [] for i in range(len(s)): if(s[0] == ')' or s[-1] == '(') : answer = False break for i in range(len(stack)) : if stack[i-1:] == ['(',')'] : stack.pop() stack.pop() if len(stack)..

[코테준비 - python] 햄버거만들기 level1 - 개발자 배찌

내가 처음에 짠 코드!! 왠지 스택으로 풀어야할것 같은 느낌이긴 했는데,, 편한 방법으로 풀어보려고 했던 나는 결국,, def solution(ingredient): temp=[] answer =0 for i in range(len(ingredient)): temp.append(ingredient[i]) if temp[len(temp)-4:len(temp)+1] == [1,2,3,1]: answer+=1 temp = temp[0:i-3] return answer 하지만 제출후 체점하기 눌렀더니 1,2 는 통과했지만 3번부터는 실패가 떴다.. 왠지는 이유를아직 못찾음.. 그래서 다시 스택으로 수정! 완성된 코드~~ def solution(ingredient): temp=[] answer =0 for i i..

[코테준비 - python] 숫자 문자열과 영단어 lever1 - 개발자 배찌

문법정리 문자열을 정수로 바꾸는방법 -> str(temp) 정수를 문자열로 바꾸는방법 -> int(temp) 딕셔너리를 이용한 선언 num = {1: 'test', 2:'test2' ...} for문으로 꺼낼때 items() 기억하기! for i in num.items() : print(i) #(1,'test') #(2,'test2') print(i[0], i[1]) # 1, test 문자열 바꿔치기 s.replace('바꿀문자열', ‘바뀔문자열’) 내가 푼 첫번째 문제풀이 >> 실패 딕셔너리로 풀려고 했다가, 뭔가 리스트(배열)로 될것같아서.. 했는데 코드가 복잡해지고,, 로직이 뭔가 이상했나보다 ㅇ_ㅇ def solution(s): num = ['zero', 'one', 'two', 'three', ..

[코테준비 - python] 성격 유형 검사하기 level1 - 개발자 배찌

defaultdict() 사용! from collections import defaultdict def solution(survey, choices): answer = '' #검사지선택지 testSelect testSelect = defaultdict(int) testSelect[1] = 3 testSelect[2] = 2 testSelect[3] = 1 testSelect[4] = 0 testSelect[5] = -1 testSelect[6] = -2 testSelect[7] = -3 #각 캐릭터별 점수를 담을 score score = defaultdict(int) #각 캐릭터별 점수 구하는 로직 for i in range(len(survey)) : if(testSelect[choices[i]] < 0..

[코테준비 - python] 신고 결과 받기 lever1 - 개발자 배찌

from collections import defaultdict 사용법..알기 오늘도 결국 문법에서 막혔다! 🌼내가 푼 문제 풀이🌼 >> 시간초과 떴다...ㅠ 이용자의 id가 담긴 문자열 배열 : id_list 각 이용자가 신고한 이용자의 id 정보가 담긴 문자열 배열 : report 정지기준이 되는 신고 횟수 : k 각 유저별로 처리결과를 메일받은 횟수 : answer def solution(id_list, report, k): report = list(set(report)) #중복 신고건 제거 reported_cnt = [0] * len(id_list) #신고당한횟수 report_notc_user = [] #신고당한유저 result = [0] * len(id_list) #알림수 #신고당한횟수 구하는 ..

[코테준비 - python] 키패드 누르기 level1 - 개발자 배찌

문법 몰랐던 내용 절대값 구하는 방법 abs(i) 내 문제 풀이 def solution(numbers, hand): leftSpot = 0 #왼 엄지 위치 rightSpot = 0 #오른 엄지 위치 answer = '' for i in range(len(numbers)) : if (numbers[i] == 1 or numbers[i] == 4 or numbers[i] == 7) : leftSpot = numbers[i] answer += 'L' elif (numbers[i] == 3 or numbers[i] == 6 or numbers[i] == 9) : rightSpot = numbers[i] answer += 'R' elif (numbers[i] == 2 or numbers[i] == 5 or num..

[코테준비 - python] 이상한 문자 만들기 level1 - 개발자 배찌

문법을 몰라서 찾아봤던 문제! 대문자로 만들기 -> s.upper() 소문자로 만들기 -> s.lower() 맨끝에서 앞 한자리 뺴고 출력 -> return s[0:-1] 문제풀이 def solution(s): answer='' answer_list = s.split(' ') answer_list_len = len(answer_list) for i in range(answer_list_len) : for j in range(len(answer_list[i])) : if j%2 == 0 : answer += answer_list[i][j].upper() else : answer += answer_list[i][j].lower() if i == answer_list_len-1 : break answer +=..