본문 바로가기

알고리즘48

[프로그래머스] 같은 숫자는 싫어 - 파이썬 1. 문제 programmers.co.kr/learn/courses/30/lessons/12906 코딩테스트 연습 - 같은 숫자는 싫어 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 programmers.co.kr 2. 내가 생각했던 풀이과정 첫 번째 생각했던 풀이 과정 1) 빈 배열을 주고 모든 리스트의 요소를 비교합니다 2) 배열의 요소가 temp와 다를 경우 temp를 그 수로 변경하고, 리스트에 추가합니다 이 경우, 테스트는 맞았지만, 효율성에 문제가 생겨 다르게 생각해보았다 두 번째 생각했던 풀이 과정 1) 배열의 첫번째 요소를 빈 리스트에.. 2020. 12. 31.
[프로그래머스] 하샤드 수 - 파이썬 1. 문제 programmers.co.kr/learn/courses/30/lessons/12947 코딩테스트 연습 - 하샤드 수 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하 programmers.co.kr 2. 내가 생각했던 풀이과정 처음에 입출력 예시만 보고 리스트로 입력받아야한다고 생각하여 리스트 기준으로 코드를 짰는데, 계속 오답처리를 하여 자세히 보니 입출력이 배열이 아닌 정수를 받아야하는 것이었다,, 일단 내가 리스트 기준으로 생각한 풀이는 아래와 같다. 1) input을 받는다 2) input 길이를 재서 input이 리스트이니 .. 2020. 12. 28.
[프로그래머스] x만큼 간격이 있는 n개의 숫자 - 파이썬 1. 문제 programmers.co.kr/learn/courses/30/lessons/12954 코딩테스트 연습 - x만큼 간격이 있는 n개의 숫자 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. programmers.co.kr 2. 내가 생각했던 풀이과정 생각한 방식은 2가지였다 아래와 같이 for 문을 이용하는 방법과 map 함수를 이용하는 것 map 함수를 이용하면 좀 더 간단하게 코드를 짤 수 있을 것 같았지만, 매개변수를 고정시켜놓았기 때문에 아래와 같이 풀이 하기로 결정하였다 1) 빈 배열을 만든다 2) 시작 숫자 x와 i를 곱.. 2020. 12. 27.
[프로그래머스] 콜라츠 추측 1. 문제 programmers.co.kr/learn/courses/30/lessons/12943 코딩테스트 연습 - 콜라츠 추측 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2 programmers.co.kr 2. 내가 생각했던 첫번째 풀이과정 1) 함수 밖에 전역 변수 count를 선언해줍니다 2) 함수를 실행했을 때 count가 500이 되지 않으면 홀수인지 짝수인지 구분합니다 짝수일 경우: number를 2로 나눈 몫으로 대체하고, count +1 을 해주게 됩니다. 그 후, 나눈 몫을 매개변수로 재귀함수를 실행해줍니다 홀수일 경우: .. 2020. 12. 27.