본문 바로가기
반응형

코딩테스트 입문/Python6

[프로그래머스/programmers] 팩토리얼 문제:i팩토리얼 (i!)은 1부터 i까지 정수의 곱을 의미합니다. 예를들어 5! = 5 * 4 * 3 * 2 * 1 = 120 입니다. 정수 n이 주어질 때 다음 조건을 만족하는 가장 큰 정수 i를 return 하도록 solution 함수를 완성해주세요.i! ≤ n  입력: 정수 n 출력: i! ≤ n 에 만족하는 가장 큰 정수 제한사항: 0   입출력 예: nresult36288001073 solution.py: from math import factorial as facdef solution(n): k = 10 while n   풀이설명:  python으로 factorial을 구현하는 방법은 여러 가지 있지만 가장 편하고 빠른 방법은 math 라이브러리의 factorial을 사용하는 방법입.. 2023. 7. 19.
[프로그래머스/programmers] 최댓값 만들기(1) 문제: 정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요. 입력: 정수 배열 numbers 출력: numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값 제한사항: 0 ≤ numbers의 원소 ≤ 10,000 2 ≤ numbers의 길이 ≤ 100 numbers result [1, 2, 3, 4, 5] 20 [0, 31, 24, 10, 1, 9] 744 solution.py: def solution(numbers): numbers.sort(reverse=True) return numbers[0]*numbers[1] 풀이설명: 배열 안에 들어있는 가장 큰 원소 두 개를 곱하면 최댓값이 .. 2023. 7. 17.
[프로그래머스/programmers] 합성수 찾기 문제: 약수의 개수가 세 개 이상인 수를 합성수라고 합니다. 자연수 n이 매개변수로 주어질 때 n이하의 합성수의 개수를 return하도록 solution 함수를 완성해주세요. 입력: 자연수 n 출력: n이하의 합성수의 개수 제한사항: 1 ≤ n ≤ 100 n result 10 5 15 8 solution.py: def solution(n): answer = 0 for i in range(n+1): cnt = 0 for j in range(1, i+1): if i%j == 0: cnt += 1 if cnt >= 3: answer += 1 return answer 풀이설명: 합성수는 약수의 개수가 3개 이상인 수를 말한다. 첫 번째 for 문에서 n 이하의 수를 찾아야 하므로 n+1 두 번째 for 문에서 .. 2023. 7. 17.
[프로그래머스/programmers] 주사위의 개수 문제: 머쓱이는 직육면체 모양의 상자를 하나 가지고 있는데 이 상자에 정육면체 모양의 주사위를 최대한 많이 채우고 싶습니다. 상자의 가로, 세로, 높이가 저장되어있는 배열 box와 주사위 모서리의 길이 정수 n이 매개변수로 주어졌을 때, 상자에 들어갈 수 있는 주사위의 최대 개수를 return 하도록 solution 함수를 완성해주세요. 입력: 상자의 가로, 세로, 높이가 저장되어있는 배열 box, 주사위 모서리의 길이 정수 n 출력: 상자에 들어갈 수 있는 주사위의 최대 개수 제한사항: box의 길이는 3입니다. box[0] = 상자의 가로 길이 box[1] = 상자의 세로 길이 box[2] = 상자의 높이 길이 1 ≤ box의 원소 ≤ 100 1 ≤ n ≤ 50 n ≤ box의 원소 주사위는 상자와 .. 2023. 7. 13.
[프로그래머스/programmers] 배열 회전시키기 문제: 정수가 담긴 배열 numbers와 문자열 direction가 매개변수로 주어집니다. 배열 numbers의 원소를 direction방향으로 한 칸씩 회전시킨 배열을 return 하도록 solution 함수를 완성해 주세요. 입력: 정수가 담긴 배열 numbers와 문자열 direction 출력: 배열 numbers의 원소를 direction방향으로 한 칸씩 회전시킨 배열 출력 제한사항: 3 ≤ numbers의 길이 ≤ 20 direction은 "left"와 "right" 둘 중 하나입니다. numbers direction result [1,2,3] "right" [3,1,2] [4, 455, 6, 4, -1, 45, 6] "left" [455, 6, 4, -1, 45, 6, 4] solution.p.. 2023. 7. 11.
[프로그래머스/programmers] 공 던지기 문제: 머쓱이는 친구들과 동그랗게 서서 공 던지기 게임을 하고 있습니다. 공은 1번부터 던지며 오른쪽으로 한 명을 건너뛰고 그다음 사람에게만 던질 수 있습니다. 친구들의 번호가 들어있는 정수 배열 numbers와 정수 K가 주어질 때, k번째로 공을 던지는 사람의 번호는 무엇인지 return 하도록 solution 함수를 완성해보세요. 입력: 친구들의 번호가 들어있는 정수 배열 numbers와 정수 K 출력: k번째로 공을 던지는 사람의 번호 제한사항: 2 < numbers의 길이 < 100 0 < k < 1,000 numbers의 첫 번째와 마지막 번호는 실제로 바로 옆에 있습니다. numbers는 1부터 시작하며 번호는 순서대로 올라갑니다. 공은 1번부터 던지며 오른쪽으로 한 명을 건너뛰고 그다음 사.. 2023. 7. 10.
728x90
반응형