문제 https://school.programmers.co.kr/learn/courses/30/lessons/86051 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(numbers): index = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] answer = [] for number in index: if number not in numbers: answer.append(number) return sum(answer)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/42889?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 설계 - 실패한 stage에 있는 사람 수 만큼 다음 stage에 진출하는 사람이 적어진다. - 확률보다 순서대로 sort하는데 애먹었다. 값에 index를 부여하기 위해 2중 for문으로 만든 후 sort 작업을 진행했다. (lamda로 sort하는 방식은 자주 사용하지 않아 어색하다) - 런타임 에러가 발생했다. 만약 5 스테이지까지 있다고 가정했을 경우 4..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/76501 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(absolutes, signs): answer = 0 for i in range(len(signs)):# False는 0이므로 -1로 바꿔줌 if signs[i] == False: signs[i] = -1 for i in range(len(absolutes)): answer += absolutes[i] * signs[i] return answer
문제 https://school.programmers.co.kr/learn/courses/30/lessons/70128?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr - 오늘의 연습문제 def solution(a, b): answer = 0 for i in range(len(a)): answer += (a[i] * b[i]) return answer
문제 https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 설계 - for문으로 확인 및 remove로 삭제해 남은 사람을 return - test case중 정확성 테스트는 모두 통과하였으나 효율성 테스트에서 모두 탈락하였다. - Hash를 사용해야 하는 것을 배우고 코드를 다시 적용하여 제출 및 성공했다. # 효율성 테스트를 통과하지 못한 코드 def solution(participant, completion): for person in comp..
문제https://school.programmers.co.kr/learn/courses/30/lessons/64061 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr설계- bucket을 활용 pythondef solution(board, moves): answer = 0 bucket = [] for move in moves: for i in range(len(board)): if board[i][move-1] > 0: # index는 0부터 시작, 1을 빼준다. bucket.app..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/72410 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 설계 - 단계별 구현력을 요구하는 문제라고 생각했다. 풀이 - 2단계는 아스키 코드를 사용하여 1중 for문으로 제거했다. - 테스트케이스를 절반 이상 틀렸는데 3단계 마침표 중복 치환을 수정하고 통과했다. def solution(new_id): # 1단계 : 모두 소문자 new_id = new_id.lower() # 2단계 : 사용 불가능 문자 제거 arr = list(new_id) for..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 설계 - 그런것 없고 그냥 깡 구현하려고 했다. - 나름대로의 로직을 순서대로 정하고 접근했지만, 결국 테스트케이스 중 2개가 시간초과 때문에 통과하지 못했다. # 시간초과로 통과하지 못한 코드 def solution(id_list, report, k): N = len(id_list) answer = [0] * len(id_list) # 편지함 person = [[] for _ in rang..
이름이 없는 동물의 아이디 https://programmers.co.kr/learn/courses/30/lessons/59039 코딩테스트 연습 - 이름이 없는 동물의 아이디 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NULL ORDER BY ANIMAL_ID; 이름이 있는 동물의 아이디 https://programmers.co.kr/learn/co..
고양이와 개는 몇 마리 있을까 https://programmers.co.kr/learn/courses/30/lessons/59040 코딩테스트 연습 - 고양이와 개는 몇 마리 있을까 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr SELECT ANIMAL_TYPE, COUNT(*) AS count FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE; 동명 동물 수 찾기 https://p..