목록분류 전체보기 (76)
개발의 흔적
안녕하세요. 프로그래머스에 있는 "제일 작은 수 구하기" 알고리즘 문제를 풀어보겠습니다. 문제 : 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. 출력 : [4,3,2,1] [4,3,2] [10] [-1] 코드 : * 문제 해설 * 정수 배열 : {4,3,2,1} 이문제는 가장 최소값을 구합니다. 최소값과 최소값의 인덱스를 구합니다. 그이유는 최소값의 인덱스를 이용하여 가장 작은값을 제거합니다. 무조건 최소값의 인덱스는 제거가 되기때문에 길이는 기존 정수배열 보..
안녕하세요. 프로그래머스에 있는 "짝수와 홀수 구하기" 알고리즘 문제를 풀어보겠습니다. 문제 : 정수 num이 짝수일 경우 Even을 반환하고 홀수인 경우 Odd를 반환하는 함수, solution을 완성해주세요. 출력 : 3 Odd 4 Even 코드 : * 문제 해설 * 정수 : 4 0으로 나누어떨어지는 값을 Even - 짝수 1으로 나누어떨어지는 값 Odd - 홀수 을 구하면 됩니다. 4 % 2 = 나머지값 0 짝수 3 % 2 = 나머지값 1 홀수 * 코드 해설 * 입력 받은 값을 2로 나누었을때 0으로 떨어지면 짝수 그렇지않은경우 홀수입니다. 더좋은 소스있으면 공유바랍니다. 출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges
안녕하세요. 프로그래머스에 있는 "콜라츠 추측" 알고리즘 문제를 풀어보겠습니다. 문제 : 입력된 수가 6이라면 6→3→10→5→16→8→4→2→1 이 되어 총 8번 만에 1이 됩니다. 위 작업을 몇 번이나 반복해야하는지 반환하는 함수, solution을 완성해 주세요. 단, 작업을 500번을 반복해도 1이 되지 않는다면 –1을 반환해 주세요. 출력 : 6 8 16 4 626331 -1 코드 : * 문제 해설 * 입력된 정수의 값이 1이 될때까지 반복을 시킵니다. 입력된 수가 짝수라면 2로 나눕니다. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다. 그후 반복된 값에 대해선 count를 줍니다. 정수 : 6 6 % 2 = 3 3 * 3 + 1 = ..
안녕하세요. 프로그래머스에 있는 "최대공약수와 최소공배수" 알고리즘 문제를 풀어보겠습니다. 문제 : 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. 출력 : 3 12 [3, 12] 2 5 [1, 10] 코드 : * 문제 해설 * 최대공약수 : 두가지의 값중 0으로 나누어떨어지는 공통적인 값중 가장 큰값 최소공배수 : 두가지의 값을 곱한값중 공통된 곱한값 * 코드 해설 * 최대공약수를 구하기 위해 바깥쪽 for문에 가장작은 값을 반복 시킨다. 반복을..