본문 바로가기

TIL/Java 알고리즘 문제 풀이12

23.06.11 점의 사분면을 알아내는 문제는 x좌표가 양수인지 음수인지, y좌표가 양수인지 음수인지만 구분하면 되기에 쉽게 풀었다. public int solution(int[] dot) { int answer; if (dot[0] > 0) { if (dot[1] > 0) { answer = 1; } else { answer = 4; } } else { if (dot[1] > 0) { answer = 2; } else { answer = 3; } } return answer; } 다음 문제인 정수열에서 임의의 두 수를 뽑아 만들 수 있는 최댓값을 구하는 문제인데, 가장 큰 두 수와 가장 작은 두 수를 뽑아 각자 곱했을 때 더 큰 것이 최댓값이기에 이를 적용하려 했으나 두번째로 큰 수와 두번째로 작은 수를 구하는 과정에.. 2023. 6. 11.
23.06.07 문자열을 반대로 출력하는 메서드 만들기 public String solution(String my_string) { char[] my_char = my_string.toCharArray(); for (int i = 0; i < my_char.length; i++) { my_char[i] = my_string.charAt(my_char.length -i - 1); } String answer = new String(my_char); return answer; } 받은 문자열을 char[]로 변환해 각 글자를 반복문으로 수정하고 다시 string으로 변환해 반환하는 방식을 택했다. 찾아보니 StringBuilder, StringBuffer 등의 reverse 메서드를 사용하면 쉽게 풀 수 있는 문제였다. 그.. 2023. 6. 7.
23.06.05 배열 두 배로 하기 배열의 각 값을 두 배로 만들어 다시 배열로 출력하는 메서드 package spartaAlgorithmSheet; import java.util.Arrays; public class _03_doubleArray { public static void main(String[] args) { int[] array = {1, 41, -23, 100, 452, -234}; for (int i = 0; i < array.length; i++) { array[i] *= 2; } System.out.println(Arrays.toString(array)); } } 배열의 형태로 출력하기 우해 Arrays 를 사용했다. 배열 뒤집기 배열의 각 값을 순서를 반대로 출력하는 메서드 package spar.. 2023. 6. 5.
23.06.03 1. 몫 구하기 public class _01_getQuotient { public static void main(String[] args) { _01_getQuotient get = new _01_getQuotient(); System.out.println(get.getQuotient()); } private int getQuotient() { Scanner sc = new Scanner(System.in); int firstNumber = sc.nextInt(); // 나눠지는 숫자 int secondNumber = sc.nextInt(); // 나눌 숫자 int quotient = firstNumber/secondNumber; // 타입이 int이므로 소수점을 버려진다. return quotient.. 2023. 6. 3.