본문 바로가기

프로그래머스 코테133

[프로그래머스 lv 1] 체육복 사용 언어 - Python3 문제 - 체육복 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정답 그리디 알고리즘 (정답 맞춘 여부 X) 1. 여벌의 체육복이 있는 학생도 체육복을 도난 당했을 수도 있다. 2. 양쪽 학생이 모두 빌려줄 수 있다면, 왼쪽 학생을 우선적으로 빌려준다. def solution(n, lost, reserve): # 여벌이 있는 학생도 체육복을 도난 당했을 수도 있다. # => 본인이 사용해야 하기 때문에, 다른 학생에게 체육복 빌려줄 수 없다. set_reserve = set(reserve) - set(lost) set_lost .. 2023. 5. 28.
[프로그래머스 lv 1] 크레인 인형뽑기 게임 사용 언어 - Python3 문제 - 크레인 인형뽑기 게임 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정답 단순 구현 (정답 맞춘 여부 O) 1. moves 위치의 board 인형이 있다면, 2. 바구니에 담는 인형을 doll 리스트에 저장해준다. 2.1. doll안에 인형이 있고, 마지막 인형이 현재 넣으려는 인형과 같다면, 터트리기 횟수 answer += 2 추가 마지막 인형 삭제 2.2. doll에 인형 append하기 3. 해당 인형을 뽑았으니 없애고 더이상의 board를 검색하지 않고 중단한다. break def solution(board, .. 2023. 5. 23.
[프로그래머스 lv 1] 키패드 누르기 사용 언어 - Python3 문제 - 키패드 누르기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정답 단순 구현 (정답 맞춘 여부 X) 딕셔너리 형태로 저장 def solution(numbers, hand): answer = '' dic = {1: [0, 0], 2: [0, 1], 3: [0, 2], 4: [1, 0], 5: [1, 1], 6: [1, 2], 7: [2, 0], 8: [2, 1], 9: [2, 2], '*':[3, 0], 0: [3, 1], '#': [3, 2]} left_s = dic['*'] right_s = dic['#'] for .. 2023. 5. 22.
[프로그래머스 lv 1] 두 개 뽑아서 하기 사용 언어 - Python3 문제 - 두 개 뽑아서 더하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정답 단순 구현 (정답 맞춘 여부 O) 첫 번째 시도 => 테스트4,5 실패 1. numbers 리스트 원소들을 한개씩 확인하면서 두 값이 다르거나, 같더라도 원소 위치가 다르면 answer에 append 했다. 2. 모든 경우의 수를 다 더해준 answer를 set(중복제거&오름차순)하여 list로 변환후 출력 => set 때문에 시간복잡도가 높아져 numbers 리스트가 큰 경우에 오류가 발생한 것 같다. def solution(numbers): .. 2023. 5. 21.
[프로그래머스 lv 1] 3진법 뒤집기 사용 언어 - Python3 문제 - 3진법 뒤집기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정답 단순 구현 (정답 맞춘 여부 O) a 빈 리스트에 n을 3으로 나눈 나머지를 순차적으로 append 해주면 굳이 반대로 따로 설정하지 않아도 반대 순서로 저장된다. a 리스트를 왼쪽부터 3의 제곱승을 곱해주면서 10진수로 변환한다. def solution(n): a = [] while n: a.append(n%3) n = n//3 answer = 0 for i in range(len(a)): answer += a[i] * 3**(len(a)-i-1) r.. 2023. 5. 21.
[프로그래머스 lv 1] 내적 사용 언어 - Python3 문제 - 내적 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정답 단순 구현 (정답 맞춘 여부 O) def solution(a, b): answer = 0 for i in range(len(a)): answer += a[i] * b[i] return answer 레퍼런스 정답 깃허브 GitHub - yyeongeun/codingtest: 코딩테스트 공부 코딩테스트 공부. Contribute to yyeongeun/codingtest development by creating an account on GitHub. github... 2023. 5. 21.
[프로그래머스 lv 1] 음양 더하기 사용 언어 - Python3 문제 - 음양 더하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정답 단순 구현 (정답 맞춘 여부 O) def solution(absolutes, signs): answer = 0 for i in range(len(absolutes)): if signs[i]: answer += absolutes[i] else: answer -= absolutes[i] return answer 레퍼런스 정답 깃허브 GitHub - yyeongeun/codingtest: 코딩테스트 공부 코딩테스트 공부. Contribute to yyeonge.. 2023. 5. 19.
[MYSQL] 조건에 부합하는 중고거래 댓글 조회하기 사용 언어 - MYSQL 프로그래머스 LV 1) 조건에 부합하는 중고거래 댓글 조회하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정답 단순 구현 (정답 맞춘 여부 X) 1. 2022년 10월 = LIKE '2022-10%' 2. DATE_FORMAT(칼럼명,'%Y-%M-%D) SELECT a.TITLE, a.BOARD_ID, b.REPLY_ID, b.WRITER_ID, b.CONTENTS, DATE_FORMAT(b.CREATED_DATE, '%Y-%m-%d') as CREATED_DATE FROM USED_GOODS_BOARD a JOIN USED_.. 2023. 5. 19.
[MYSQL] 과일로 만든 아이스크림 고르기 사용 언어 - MYSQL 프로그래머스 LV 1) 과일로 만든 아이스크림 고르기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정답 단순 구현 (정답 맞춘 여부 O) 1. SELECT FIRST_HALF A 2. A를 기준으로 LEFT JOIN ~ ON A에서 출력해야하기 때문 A와 B는 기본키인 FLAVOR로 조인 3. WHERE 조건 문자열 LIKE, 숫자 > 4. FLAVOR를 TOTAL_ORDER를 기준으로 내림차순 정렬 SELECT A.FLAVOR FROM FIRST_HALF A LEFT JOIN ICECREAM_INFO B ON A.FLAVOR .. 2023. 5. 19.
[프로그래머스 lv1] 로또의 최고 순위와 최저 순위 사용 언어 - Python3 문제 - 로또의 최고 순위와 최저 순위 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정답 단순 구현 (정답 맞춘 여부 O) 내 첫번째 정답에서 보완할 점 1. 굳이 win_nums에서 당첨된 애들을 삭제하고 개수를 세지 않아도 된다. 0이 3개인데, 당첨번호가 2개일까봐 if문을 넣었지만, 생각해보니 lottos와 win_nums의 리스트 길이는 항상 같기 때문에 고려하지 않아도 되었다. ㅎㅎ 2. if 문 대신 딕셔너리나 리스트 사용 def solution(lottos, win_nums): answer = [] cnt = .. 2023. 5. 19.