본문 바로가기

728x90

연습문제

[프로그래머스/JAVA] 코딩테스트 연습 > 연습문제 > 연속 부분 수열 합의 개수(by 다알쥐AI) [연속 부분 수열 합의 개수] 코딩테스트 연습 > 연습문제 > 연속 부분 수열 합의 개수  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기철호는 수열을 가지고 놀기 좋아합니다. 어느 날 철호는 어떤 자연수로 이루어진 원형 수열의 연속하는 부분 수열의 합으로 만들 수 있는 수가 모두 몇 가지인지 알아보고 싶어졌습니다. 원형 수열이란 일반적인 수열에서 처음과 끝이 연결된 형태의 수열을 말합니다. 예를 들어 수열 [7, 9, 1, 1, 4] 로 원형 수열을 만들면 다음과 같습니다.원형 수열은 처음과 끝이 연결되어 끊기는 부분이 없기 때문에 연속하는 부분 수열도 일반적인 수열보다 많아집니다.원형 수열의 모든 원소 elements가 순서대로 주어질 때, 원형 수열의 연속 부분 수열 합.. 더보기
[프로그래머스/JAVA] 코딩테스트 연습 > 연습문제 > 멀리뛰기 (by 다알쥐AI) [멀리뛰기] 코딩테스트 연습 > 연습문제 > 멀리뛰기  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기효진이는 멀리 뛰기를 연습하고 있습니다. 효진이는 한번에 1칸, 또는 2칸을 뛸 수 있습니다. 칸이 총 4개 있을 때, 효진이는(1칸, 1칸, 1칸, 1칸)(1칸, 2칸, 1칸)(1칸, 1칸, 2칸)(2칸, 1칸, 1칸)(2칸, 2칸)의 5가지 방법으로 맨 끝 칸에 도달할 수 있습니다. 멀리뛰기에 사용될 칸의 수 n이 주어질 때, 효진이가 끝에 도달하는 방법이 몇 가지인지 알아내, 여기에 1234567를 나눈 나머지를 리턴하는 함수, solution을 완성하세요. 예를 들어 4가 입력된다면, 5를 return하면 됩니다. 제한 사항n은 1 이상, 2000 이하인 정수입니다.입.. 더보기
[프로그래머스/JAVA] 코딩테스트 연습 > 연습문제 > 귤 고르기 (by 다알쥐AI) [귤 고르기] 코딩테스트 연습 > 연습문제 > 귤 고르기  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기경화는 과수원에서 귤을 수확했습니다. 경화는 수확한 귤 중 'k'개를 골라 상자 하나에 담아 판매하려고 합니다. 그런데 수확한 귤의 크기가 일정하지 않아 보기에 좋지 않다고 생각한 경화는 귤을 크기별로 분류했을 때 서로 다른 종류의 수를 최소화하고 싶습니다. 예를 들어, 경화가 수확한 귤 8개의 크기가 [1, 3, 2, 5, 4, 5, 2, 3] 이라고 합시다. 경화가 귤 6개를 판매하고 싶다면, 크기가 1, 4인 귤을 제외한 여섯 개의 귤을 상자에 담으면, 귤의 크기의 종류가 2, 3, 5로 총 3가지가 되며 이때가 서로 다른 종류가 최소일 때입니다. 경화가 한 상자에 .. 더보기
[프로그래머스/JAVA] 코딩테스트 연습 > 연습문제 > N개의 최소공배수 (by 다알쥐AI) [N개의 최소공배수] 코딩테스트 연습 > 연습문제 > N개의 최소공배수  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기두 수의 최소공배수(Least Common Multiple)란 입력된 두 수의 배수 중 공통이 되는 가장 작은 숫자를 의미합니다. 예를 들어 2와 7의 최소공배수는 14가 됩니다. 정의를 확장해서, n개의 수의 최소공배수는 n 개의 수들의 배수 중 공통이 되는 가장 작은 숫자가 됩니다. n개의 숫자를 담은 배열 arr이 입력되었을 때 이 수들의 최소공배수를 반환하는 함수, solution을 완성해 주세요. 제한 사항arr은 길이 1이상, 15이하인 배열입니다.arr의 원소는 100 이하인 자연수입니다.입출력 예[간단설명]주어진 배열의 모든 숫자의 최대공배수 .. 더보기
[프로그래머스/JAVA] 코딩테스트 연습 > 연습문제 > 피보나치 수 (by 다알쥐AI) [피보나치 수] 코딩테스트 연습 > 연습문제 > 피보나치 수  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수 입니다.예를들어F(2) = F(0) + F(1) = 0 + 1 = 1F(3) = F(1) + F(2) = 1 + 1 = 2F(4) = F(2) + F(3) = 1 + 2 = 3F(5) = F(3) + F(4) = 2 + 3 = 5와 같이 이어집니다.2 이상의 n이 입력되었을 때, n번째 피보나치 수를 1234567으로 나눈 나머지를 리턴하는 함수, solution을 완성해 주세요.제한 사항n은 2 이상 100,000 이하인 자연수입니다.. 더보기
[프로그래머스/JAVA] 코딩테스트 연습 > 연습문제 > 다음 큰 숫자(by 다알쥐AI) [다음 큰 숫자] 코딩테스트 연습 > 연습문제 > 다음 큰 숫자  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기자연수 n이 주어졌을 때, n의 다음 큰 숫자는 다음과 같이 정의 합니다.조건 1. n의 다음 큰 숫자는 n보다 큰 자연수 입니다.조건 2. n의 다음 큰 숫자와 n은 2진수로 변환했을 때 1의 갯수가 같습니다.조건 3. n의 다음 큰 숫자는 조건 1, 2를 만족하는 수 중 가장 작은 수 입니다.예를 들어서 78(1001110)의 다음 큰 숫자는 83(1010011)입니다.자연수 n이 매개변수로 주어질 때, n의 다음 큰 숫자를 return 하는 solution 함수를 완성해주세요.제한 사항n은 1,000,000 이하의 자연수 입니다.입출력 예입출력 예 설명입출력 .. 더보기
[프로그래머스/JAVA] 코딩테스트 연습 > 연습문제 > 숫자의 표현 (by 다알쥐AI) [숫자의 표현] 코딩테스트 연습 > 연습문제 > 숫자의 표현  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기Finn은 요즘 수학공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현 하는 방법이 여러개라는 사실을 알게 되었습니다. 예를들어 15는 다음과 같이 4가지로 표현 할 수 있습니다.1 + 2 + 3 + 4 + 5 = 154 + 5 + 6 = 157 + 8 = 1515 = 15자연수 n이 매개변수로 주어질 때, 연속된 자연수들로 n을 표현하는 방법의 수를 return하는 solution를 완성해주세요.제한사항n은 10,000 이하의 자연수 입니다.입출력 예입출력 예 설명입출력 예#1문제의 예시와 같습니다.[간단설명]연속된 숫자를 더해서 .. 더보기
[프로그래머스/JAVA] 코딩테스트 연습 > 연습문제 > 이진 변환 반복하기(by 다알쥐AI) [이진 변환 반복하기] 코딩테스트 연습 > 연습문제 > 이진 변환 반복하기  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기0과 1로 이루어진 어떤 문자열 x에 대한 이진 변환을 다음과 같이 정의합니다.x의 모든 0을 제거합니다.x의 길이를 c라고 하면, x를 "c를 2진법으로 표현한 문자열"로 바꿉니다.예를 들어, x = "0111010"이라면, x에 이진 변환을 가하면 x = "0111010" -> "1111" -> "100" 이 됩니다. 0과 1로 이루어진 문자열 s가 매개변수로 주어집니다. s가 "1"이 될 때까지 계속해서 s에 이진 변환을 가했을 때, 이진 변환의 횟수와 변환 과정에서 제거된 모든 0의 개수를 각각 배열에 담아 return 하도록 solution 함수.. 더보기

728x90