자바 알고리즘 #Level1 약수의 합 문제 - 출처 : tryhelloworld.co.kr 어떤 수를 입력받아 그 수의 약수를 모두 더한 수 sumDivisor 함수를 완성해 보세요. 예를 들어 12가 입력된다면 12의 약수는 [1, 2, 3, 4, 6, 12]가 되고, 총 합은 28이 되므로 28을 반환해 주면 됩니다. [내 풀이] 약수의 개념만 안다면 쉬운문제. 더 간단한 코드가 있을텐데 다른 사람 풀이를 보니 나와 별다른 점을 찾지 못했다. 더 찾아 봐야겠다. JAVA/Argorithm Test 2016.07.12
자바 알고리즘 #Level1 최대공약수와 최소공배수 문제 - 출처 : tryhelloworld.co.kr 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환해주는 gcdlcm 함수를 완성해 보세요. 배열의 맨 앞에 최대공약수, 그 다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 gcdlcm(3,12) 가 입력되면, [3, 12]를 반환해주면 됩니다. [내 풀이] [다른 사람 풀이] public int[] gcdlcm(int a, int b) { int[] answer = new int[2]; answer[0] = gcd(a,b); answer[1] = (a*b)/answer[0]; return answer; } public static int gcd(int p, int q) { if (q == 0) return p; return gcd(q, p%.. JAVA/Argorithm Test 2016.07.11
자바 알고리즘 #Level1 수박수박수박수박수? 문제 - 출처 : tryhelloworld.co.kr water_melon함수는 정수 n을 매개변수로 입력받습니다. 길이가 n이고, 수박수박수...와 같은 패턴을 유지하는 문자열을 리턴하도록 함수를 완성하세요. 예를들어 n이 4이면 '수박수박'을 리턴하고 3이라면 '수박수'를 리턴하면 됩니다. [내 풀이] JAVA/Argorithm Test 2016.07.07
자바 알고리즘 #Level1 가운데 글자 가져오기 문제 - 출처 : tryhelloworld.co.kr getMiddle메소드는 하나의 단어를 입력 받습니다. 단어를 입력 받아서 가운데 글자를 반환하도록 getMiddle메소드를 만들어 보세요. 단어의 길이가 짝수일경우 가운데 두글자를 반환하면 됩니다. 예를들어 입력받은 단어가 power이라면 w를 반환하면 되고, 입력받은 단어가 test라면 es를 반환하면 됩니다. [내 풀이] [다른사람 풀이] String res; if (word.length() % 2 == 1) { res = word.substring(word.length()/2,word.length()/2+1); } else { res = word.substring(word.length()/2-1,word.length()/2+1); } retur.. JAVA/Argorithm Test 2016.07.07
자바 알고리즘 #Level1 문자열 내림차순으로 배치하기 문제 - 출처 : tryhelloworld.co.kr reverseStr 메소드는 String형 변수 str을 매개변수로 입력받습니다. str에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 String을 리턴해주세요. str는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다. 예를들어 str이 "Zbcdefg"면 "gfedcbZ"을 리턴하면 됩니다. [내 풀이] String 문자열을 ArrayLIst에 넣고 Collections으로 정렬하였다. (reverseOrder = 내림차순) [다른사람 풀이] char[] sol = str.toCharArray(); Arrays.sort(sol); return new StringBuilder(new String(sol)).re.. JAVA/Argorithm Test 2016.07.07
자바 알고리즘 #Level1 나누어 떨어지는 숫자 배열 문제 - 출처 : tryhelloworld.co.kr divisible 메소드는 int형 배열 array와 int divisor를 매개변수로 받습니다. array의 각 element 중 divisor로 나누어 떨어지는 값만 포함하는 새로운 배열을 만들어서 반환하도록 divisible에 코드를 작성해 보세요. 예를들어 array가 {5, 9, 7, 10}이고 divisor가 5이면 {5, 10}을 리턴해야 합니다. [내 풀이] [다른 사람 풀이에서] for(int n : array) { // array 배열 값을 n에 차례대로 넣는 것. if( n % divisor ==0 ) arrayList.add(n); } for - each 문을 사용하여 훨씬 간결하게 코딩할 수 있었다. JAVA/Argorithm Test 2016.07.06
자바 알고리즘 #Level1 스트링을 숫자로 문제 - 출처 : tryhelloworld.co.kr strToInt 메소드는 String형 str을 매개변수로 받습니다. str을 숫자로 변환한 결과를 반환하도록 strToInt를 완성하세요. 예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다. str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다. [내 풀이] JAVA/Argorithm Test 2016.07.05
자바 알고리즘 #Level1 서울에서 김서방 찾기 문제 - 출처 : tryhelloworld.co.kr findKim 함수(메소드)는 String형 배열 seoul을 매개변수로 받습니다. seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. [내 풀이] JAVA/Argorithm Test 2016.07.04
자바 알고리즘 #Level1 최대값과 최소값 구하기 문제 - 출처 : tryhelloworld.co.kr [문제] getMinMaxString 메소드는 String형 변수 str을 매개변수로 입력받습니다. str에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 String을 반환하는 메소드를 완성하세요. 예를들어 str이 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다. [내 풀이] -> 자바실력의 모자람으로 풀지못함. [ 다른 사람의 풀이 참조 ] [ 알게 된 것 ] split() - 괄호안의 내용을 기준으로 String 구문 내용을 분리 시켜준다. Array.sort() - 정렬함수 int[] arrayInt .. JAVA/Argorithm Test 2016.07.01
자바 알고리즘 #Level1 짝수와 홀수 문제 - 출처 : tryhelloworld.co.kr [문제] evenOrOdd 메소드는 int형 num을 매개변수로 받습니다. num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하도록 evenOrOdd에 코드를 작성해 보세요. num은 0이상의 정수이며, num이 음수인 경우는 없습니다. [내 풀이] JAVA/Argorithm Test 2016.06.30