목록전체 글 (76)
개발의 흔적

안녕하세요. 프로그래머스에 있는 "정수 내림차순으로 배치하기" 알고리즘 문제를 풀어보겠습니다. 문제 : 함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 출력 : 118372 873211 코드 : * 문제 해설 * 정수 : 118372 Long타입의 정수의 길이를 구해야합니다. 그후 "버블정렬"를 이용하여 가장 작은값이 인덱스의 맨마지막쪽으로 들어갑니다. 버블 정렬 : 정렬 기법중 하나로 맨앞 0번쨰 인덱스와 1번째 인덱스를 비교하여 가장 큰값 또는 가장 작은값을 오른쪽으로 치환하는 기법입니다. 물론 Arrays.sort()를 써서 정렬을 구현할수있습니다. 하지..

안녕하세요. 프로그래머스에 있는 "자릿수 더하기" 알고리즘 문제를 풀어보겠습니다. 문제 : 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 출력 : 123 6 987 24 코드 : * 문제 해설 * 정수 : 123 정수의 값의 길이를 구합니다. 길이를 구한후 나머지값을 구한값을 더합니다. * 코드 해설 * 정수 123의 값의 길이를 구하기 위해 문자열로 변환 후 잘라서 배열로 저장합니다. 10으로 나눈 나머지값을 answer에 담고 값을 다 더한후 리턴합니다. 좋은 코드있으면 공유바랍니다. 출처: 프로그래머스 코딩 테스트 연습, https://programmers..

안녕하세요. 프로그래머스에 있는 "자연수 뒤집어 밸로 만들기 " 알고리즘 문제를 풀어보겠습니다. 문제 : 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 출력 : 12345 [5,4,3,2,1] 코드 : * 문제 해설 * 정수 : 12345 정수를 뒤집기 위해서 정수의 길이를 구합니다. 원래는 정수를 하나씩 잘라서 마지막 인덱스 값부터 차례대로 값을 처리하려고했지만 10으로 나누어 나머지값을 넣었습니다. * 코드 해설 * 현재 정수 n의값은 길이를 알수가없습니다. 길이를 알기위해 자료형을 변환 시켜야합니다. Long.toString의 함수를 이용하여 String 길이를 저장합니다. 저장한 길이를 int[] 배열의..

안녕하세요. 프로그래머스에 있는 "정수 제곱근 판별" 알고리즘 문제를 풀어보겠습니다. 문제 : 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. 출력 : 121 144 3 -1 코드 : * 문제 해설 * 정수 : 121,3 API사용안하고 제곱근구하는방법 1. 제곱근이란 : 정수a의값을 두번 곲한 값 121의 제곱근을 구하기 위해 for문을 i부터 121까지의 길이만큼 곱합니다. ( i * i == 121) 121 -> 11 * 11의 제곱근이 나옵니다. * 코드 해설 * 현재 제곱근을 Math.sqrt()의 api를 사용하여 제곱근..