[Programmers] 콜라츠 추측
·
코딩 테스트/Python
문제 설명1937년 Collatz란 사람에 의해 제기된 이 추측은,주어진 수가 1이 될 때까지 다음 작업을 반복하면,모든 수를 1로 만들 수 있다는 추측입니다.작업은 다음과 같습니다.1-1. 입력된 수가 짝수라면 2로 나눕니다.1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다.2. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다.예를 들어, 주어진 수가 6이라면 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1 이 되어 총 8번 만에 1이 됩니다. 위 작업을 몇 번이나 반복해야 하는지 반환하는 함수, solution을 완성해 주세요. 단, 주어진 수가 1인 경우에는 0을, 작업을 500번 반복할 때까지 1이 되지 않는다면 –1을 반환해 주세요.제한 사항입력된 수, num은 ..
[Programmers] 없는 숫자 더하기
·
코딩 테스트/Python
문제 설명0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.제한사항1 ≤ numbers의 길이 ≤ 90 ≤ numbers의 모든 원소 ≤ 9numbers의 모든 원소는 서로 다릅니다.입출력 예numbers result[1,2,3,4,6,7,8,0] 14[5,8,4,0,6,7,9] 6입출력 예 설명입출력 예 #15, 9가 numbers에 없으므로,5 + 9 = 14를 return 해야 합니다.입출력 예 #21, 2, 3이 numbers에 없으므로,1 + 2 + 3 = 6을 return 해야 합니다. [풀이]def solution(n..
[Programmers] 제일 작은 수 제거하기
·
코딩 테스트/Python
문제 설명정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.제한 조건arr은 길이 1 이상인 배열입니다.인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다.입출력 예arr return[4,3,2,1] [4,3,2][10] [-1] [풀이]def solution(arr): arr.remove(min(arr)) #배열을 받습니다. #배열중 가장 낮은 수를 찾습니다. #현재 배열에서 찾은 수를 빼고 반환 해줍니다. ..
[Python] 연산자
·
추가 공부/Python
Python 연산자를 정리해둔다. 1. 기본 연산자연산자설명예시결과+덧셈3 + 25-뺄셈3 - 21*곱셈3 * 26/나눗셈3 / 21.5//몫3 // 21%나머지3 % 21**거듭제곱3 ** 292. 연산자 우선순위우선순위연산자1()2**3+, - (단항)4*, /, //, %5+, - (이항)6관계 연산자 (>, 7논리 연산자 (not, and, or)3. 대입 연산자연산자설명예시결과=대입x = 5x = 5+=덧셈 후 대입x += 3x = x + 3-=뺄셈 후 대입x -= 3x = x - 3*=곱셈 후 대입x *= 3x = x * 3/=나눗셈 후 대입x /= 3x = x / 3//=몫 연산 후 대입x //= 3x = x // 3%=나머지 연산 후 대입x %= 3x = x % 3**=거듭제곱 후 대입x ..
[Programmers] 나누어 떨어지는 숫자 배열
·
코딩 테스트/Python
[문제]더보기array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.[풀이]'''array의 각 element 중 divisor로 나누어 떨어지는 값을오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.'''def solution(arr, divisor): answer = [] #배열에 값을 받습니다. #값을 받아온 정수로 나눠 나머지가 0인 값만 배열에 담습니다. #배열에 담긴 정수를 나..
[Programmers] 약수의 합
·
코딩 테스트/Python
[문제]더보기정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요.[풀이]'''정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수,solution을 완성해주세요.'''def solution(n): answer = 0 #입력 받은 값 만큼 반복합니다. #반복되는 값을 나눴을 때 나머지가 0 이라면 #answer 값에 추가한다. for i in range(1, n+1) : if n % i == 0 : answer += i print(answer) return answersolution(5)#print(sum([i for i in range(1, 12+1) if 12 % i == 0]))
[Programmers] 정수 내림차순으로 배치하기
·
코딩 테스트/Python
[문제]더보기함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.[풀이]"""함수 solution은 정수 n을 매개변수로 입력받습니다.n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요.예를들어 n이 118372면 873211을 리턴하면 됩니다."""def solution(n): answer = 0 a="" for i in sorted(list(str(n)), reverse=True) : a += i # print(int("".join(sorted(list(str(n)), reverse=True)))) answer =..
[Programmers] 하샤드 수
·
코딩 테스트/Python
[문제]더보기양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요.[풀이]"""양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다.예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다.자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요."""def solution(x): #입력받은 값은 정수 이기 때문에 문자로 바꿔 하나씩 가져온다. #받아온 문자를 숫자로 바꿔줍..
개발자가 되고 싶은 곰
'분류 전체보기' 카테고리의 글 목록 (4 Page)