코딩테스트 10

[프로그래머스] 카펫 python

문제: https://school.programmers.co.kr/learn/courses/30/lessons/42842 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr # "brown/2 = h+w+2" 아이디어가 중요 열쇠 def solution(brown, yellow): # brown/2 = h+w+2 아이디어 answer = [] sum_hw = int((brown/2) + 2) # h와 w의 차이가 날 수 있는 모든 경우의 수 확인 # 무조건 h > w이기 때문에 tmp_w가 큰 경우부터 확인 for i in range(1, sum_hw): tm..

[프로그래머스] 성격 유형 검사하기 python

# 문제: https://school.programmers.co.kr/learn/courses/30/lessons/118666 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr # 유형 산출 부분을 어떻게 하면 더 효율적으로 만들 수 있을까? def solution(survey, choices): answer = [] dic = {'R':0, 'T':0,'C':0,'F':0,'J':0,'M':0,'A':0,'N':0} # 유형 검사 for survey_type, choices_num in zip(survey, choices): # print(survey_ty..

[프로그래머스] 신고 결과 받기 python

문제: https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 방법1: 테스트3 시간초과 def solution(id_list, report, k): warned_id, user_id, mail_id = [], [], [] #중복 삭제 report = list(set(report)) #신고자, 신고받은자 구분 for ID in (report): tmp = ID.split(' ')[1] warned_id.append(tmp) tmp = ID.split(..

[프로그래머스] 최소직사각형 python

문제: https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr # [i[0] for i in sizes] 이 방법 기억하기 def solution(sizes): answer = 0 for i in range(len(sizes)): sizes[i] = sorted(sizes[i]) #2차원 리스트에서 0번쨰, 1번쨰만 각각 도출 a = [i[0] for i in sizes] b = [i[1] for i in sizes] return max(a) * ma..

[프로그래머스] [1차]비밀지도 python

문제: https://school.programmers.co.kr/learn/courses/30/lessons/17681 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr # 2진법으로 바꾸기 = (bin(10)) # 8진법으로 바꾸기 = (oct(10)) # 10진법으로 바꾸기 = (hex(10)) def solution(n, arr1, arr2): answer, tmp = [], [] for x, y in zip(arr1,arr2): # 2진법으로 변경 x = str(int(bin(x)[2:])) y = str(int(bin(y)[2:])) add = l..

[프로그래머스] 오픈채팅방 python

# 문제 https://school.programmers.co.kr/learn/courses/30/lessons/42888 global dic dic = {} def nick_name_update(ID,nick_name): ## 닉네임 저장 dic[ID] = nick_name return def solution(record): answer = [] tmp_answer = [] ## 닉네임 업데이트 by dict for i in record: action = i.split(sep=' ') if action[0] == 'Enter': nick_name_update(action[1],action[2]) tmp_answer.append([action[0],action[1]]) elif action[0] == '..

728x90