목록알고리즘 (19)
개발계발
https://school.programmers.co.kr/learn/courses/30/lessons/120852 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr위 문제를 풀다가 answer를 반환할 때 중복을 제거하는 방법에서 막힘 원래 내가 제출한 코드는def solution(n): answer = [] divide_num = 2 while divide_num 위와 같았는데, set은 중복은 제거하나, 순서를 보장하지 않아서 틀렸다고 나옴. 그래서 dict을 써서 아래와 같이 중복을 제거하고 순서도 보장해주는 아래와 같이 변경함.def ..
문제링크https://school.programmers.co.kr/learn/courses/30/lessons/68935 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 접근방식1. 입력값 n을 3으로 나눈 나머지를 3진법으로 변환한 코드에 넣는다.2. n을 3으로 나눈 몫으로 바꾼다.3. 위 과정을 n이 0이 될 때까지 반복한다. 풀이코드def solution(n): answer = 0 formation_3 = "" # i = 1 while n > 0: formation_3 += str(n % 3) n =..
문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/42883 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 접근 방식1 (틀림)1. 입력값인 number를 정렬2. 정렬된 값에서 순서대로 작은 숫자 k를 삭제한다.3. 값을 지우고 남은 숫자들을 원래 순서대로 다시 조합한다.풀이 코드1 (틀림)def solution(number, k): answer = '' numbers = [] for idx, num in enumerate(number): numbers.ap..
문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr접근 방식1. [1~number]까지의 약수의 갯수를 모두 구해서 리스트에 저장1-1. 약수의 갯수가 limit보다 크면 리스트에 약수의 갯수 대신 power를 넣음2. 리스트의 합 구해서 반환 풀이 코드1(정답)def count_divisors(number, limit): if number == 1: return 1 result = 0 for nu..
문제 설명2차원 행렬 arr1과 arr2를 입력받아, arr1에 arr2를 곱한 결과를 반환하는 함수, solution을 완성해주세요. 제한 조건- 행렬 arr1, arr2의 행과 열의 길이는 2 이상 100 이하입니다.- 행렬 arr1, arr2의 원소는 -10 이상 20 이하인 자연수입니다.- 곱할 수 있는 배열만 주어집니다. 접근 방식- 행렬의 곱셈 공식을 알아야 함- a*b 크기의 행렬과 c*d 크기의 곱셈의 결과 행렬의 크기는 a*d이다.- 첫째 행렬의 열 갯수와 둘째 행렬의 행 갯수가 동일해야한다.- 곱셈한 결과의 1행의 0번 인덱스는[첫번째 행렬의 (0,0) 원소 * 두번째 행렬의 (0,0) 원소] + [첫번째 행렬의 (0,1) 원소 * 두번째 행렬의 (1,0) 원소]-> 즉, 첫번째 행렬은..
문제는 아래 링크 참고https://school.programmers.co.kr/learn/courses/30/lessons/81302 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr접근 방식맨해튼 거리 : (r1, c1), (r2, c2)에 위치한 테이블의 맨해튼 거리는 |r1-r2| + |c1-c2|P : 응시자O : 빈 테이블X : 파티션거리두기 : 응시자 사이에 파티션이 있거나, 맨해튼 거리가 3이상이여야 함거리두기를 지킬경우 1, 아니면 0을 배열에 담아 반환 메인 함수1. 입력받은 places의 원소(1차원 배열)하나씩 거리두기 함수에 넘김2. 거리..