레거시
-
[프로그래머스 2단계] 알고리즘 23. 하샤드수 구하기레거시/레거시-알고리즘(3) 2018. 4. 9. 11:09
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 23. 하샤드수 구하기양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다.Harshad함수는 양의 정수 n을 매개변수로 입력받습니다. 이 n이 하샤드수인지 아닌지 판단하는 함수를 완성하세요. 예를들어 n이 10, 12, 18이면 True를 리턴 11, 13이면 False를 리턴하면 됩니다.public class HarshadNumber{ public boolean isHarshad(int num){ return true; } // 아..
-
[프로그래머스 2단계] 알고리즘 22. 정수 내림차순으로 배치하기레거시/레거시-알고리즘(3) 2018. 4. 6. 12:55
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 22. 정수 내림차순으로 배치하기reverseInt 메소드는 int형 n을 매개변수로 입력받습니다. n에 나타나는 숫자를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. n은 양의 정수입니다. public class ReverseInt { public int reverseInt(int n){ return 0; } // 아래는 테스트로 출력해 보기 위한 코드입니다. public static void main(String[] args){ ReverseInt ri = new ReverseInt..
-
[프로그래머스 2단계] 알고리즘 21. 괄호 확인하기레거시/레거시-알고리즘(3) 2018. 4. 6. 11:52
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 21. 괄호 확인하기is_pair함수는 문자열 s를 매개변수로 입력받습니다. s에 괄호가 알맞게 짝지어져 있으면 True를 아니면 False를 리턴하는 함수를 완성하세요. 예를들어 s가 (hello)()면 True이고, )(이면 False입니다. s가 빈 문자열("")인 경우는 없습니다. def is_pair(s): # 함수를 완성하세요 return True # 아래는 테스트로 출력해 보기 위한 코드입니다.print( is_pair("(hello)()"))print( is_pair(")(")) 풀이 : 이 문제의 핵심은 괄호 쌍의 확인! 이 문제는 Stac..
-
[프로그래머스 2단계] 알고리즘 20. 자연수를 뒤집어 리스트로 만들기레거시/레거시-알고리즘(3) 2018. 4. 5. 11:25
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 20. 자연수를 뒤집어 리스트로 만들기 digit_reverse함수는 양의 정수 n을 매개변수로 입력받습니다. n을 뒤집어 숫자 하나하나를 list로 표현해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴하면 됩니다. def digit_reverse(n): # 함수를 완성해 주세요 return '' # 아래는 테스트로 출력해 보기 위한 코드입니다.print("결과 : {}".format(digit_reverse(12345))); 풀이 : 이번 문제의 핵심은 자연수를 자릿수마다 리스트를 만든 후에 뒤집으면 된다. 제일 간단한 방법으로는 다음 ..
-
[프로그래머스 2단계] 알고리즘 19. 소수 찾기레거시/레거시-알고리즘(3) 2018. 4. 4. 23:30
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 19. 소수 찾기numberOfPrime 메소드는 정수 n을 매개변수로 입력받습니다.1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하도록 numberOfPrime 메소드를 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.)10을 입력받았다면, 1부터 10 사이의 소수는 [2,3,5,7] 4개가 존재하므로 4를 반환 5를 입력받았다면, 1부터 5 사이의 소수는 [2,3,5] 3개가 존재하므로 3를 반환class NumOfPrime { int numberOfPrime(int n) { int result ..
-
[프로그래머스 2단계] 알고리즘 18. 콜라츠 추측레거시/레거시-알고리즘(3) 2018. 4. 3. 09:44
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 18. 콜라츠 추측 1937년 Collatz란 사람에 의해 제기된 이 추측은, 입력된 수가 짝수라면 2로 나누고, 홀수라면 3을 곱하고 1을 더한 다음, 결과로 나온 수에 같은 작업을 1이 될 때까지 반복할 경우 모든 수가 1이 된다는 추측입니다. 예를 들어, 입력된 수가 6이라면 6→3→10→5→16→8→4→2→1 이 되어 총 8번 만에 1이 됩니다. collatz 함수를 만들어 입력된 수가 몇 번 만에 1이 되는지 반환해 주세요. 단, 500번을 반복해도 1이 되지 않는다면 –1을 반환해 주세요. #includeusing namespace std; in..
-
[프로그래머스 1단계] 알고리즘 17. 최솟값 만들기레거시/레거시-알고리즘(3) 2018. 4. 2. 10:21
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 17. 최솟값 만들기[2단계]자연수로 이루어진 길이가 같은 수열 A,B가 있습니다. 최솟값 만들기는 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱한 값을 누적하여 더합니다. 이러한 과정을 수열의 길이만큼 반복하여 최종적으로 누적된 값이 최소가 되도록 만드는 것이 목표입니다.예를 들어 A = [1, 2] , B = [3, 4] 라면A에서 1, B에서 4를 뽑아 곱하여 더합니다.A에서 2, B에서 3을 뽑아 곱하여 더합니다.수열의 길이만큼 반복하여 최솟값 10을 얻을 수 있으며, 이 10이 최솟값이 됩니다. 수열 A,B가 주어질 때, 최솟값을 반환해주는 ..
-
[프로그래머스 1단계] 알고리즘 16. 삼각형 출력하기레거시/레거시-알고리즘(3) 2018. 3. 30. 12:43
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 16. 삼각형 출력하기 printTriangle 메소드는 양의 정수 num을 매개변수로 입력받습니다. 다음을 참고해 *(별)로 높이가 num인 삼각형을 문자열로 리턴하는 printTriangle 메소드를 완성하세요 printTriangle이 return하는 String은 개행문자('\n')로 끝나야 합니다.높이가 3일때* ** *** 높이가 5일때* ** *** **** ***** function printTriangle(num) { var result = '' // 함수를 완성하세요 return result} // 아래는 테스트로 출력해 보기 위한 코드입..