Algorithm(코딩테스트)35 [JAVA] 시뮬레이션 1 - 시간 계산 / 날짜 계산 / 진수 변환 / 구간 칠하기 / 사각형 칠하기 요약간단한 시뮬레이션에 대해 학습한다.- 시간 계산 (주어진 것 중 가장 작은 단위로 변환하여 풀이)- 날짜 계산 (주어진 것 중 가장 작은 단위로 변환하여 풀이)- 진수 변환 (진수 변환 방식 그대로 구현, a 진수 -> b 진수 변환 시 a 진수 -> 10 진수 -> b 진수 로 변환) - 구간 칠하기 (1차원 배열 flood fill)- 사각형 칠하기 (2차원 배열 flood fill) 시간 계산 / 날짜 계산가장 작은 (또는 공통된 단위)로 변환하여 계산한다.Ex) 시간을 분 단위로 환산하여 계산Ex) 날짜를 일 단위로 변환하여 계산 System.out.println() 으로 찍어가면서 코딩하는 것이 정확함. 풀어보면 좋은 문제코드트리_흐른 날짜 계산https://www.codetree.ai/mi.. 2024. 12. 6. [JAVA] 정렬 요약1) 일반 정렬 문법을 학습한다.2) 객체 정렬 / 정렬 커스텀마이징을 한다. (Comparable 인터페이스 , compareTo 메서드 사용)3) 여러 개의 정렬 커스텀마이징을 한다. (Comparator 인터페이스 , compare 메서드 사용) 1) 일반 정렬[문법]단순한 오름차순/내림차순 정렬에 활용내림차순 정렬은 wrapper 자료형만 가능 (wrapper 자료형 : Integer과 같이 자료형이 대문자로 시작하는 것) v">배열ArrayList오름차순 정렬v">Arrays.sort(arr)Collections.sort(list)내림차순 정렬v">Arrays.sort(arr, Collections.reverseOrder())Collections.sort(arr, Collections.rev.. 2024. 12. 5. [JAVA] 소수 판별 알고리즘 Summary1. 어떤 수가 소수인지 판별할 수 있는 함수를 작성할 수 있다. 소수 판별 알고리즘[소수?]1인 아닌 수 중에서 자기 자신과 1 이외의 양의 약수를 가지지 않는 자연수 Ex) 5는 소수이다.1) 1이 아니면서2) 5의 약수는 1과 5이다. (1과 자기 자신만 약수로 가진다.)Ex) 8은 소수가 아니다.1) 1이 아니면서2) 8의 약수는 1,2,4,8 이다. (1과 자기 자신인 8 이외에도 2,4가 약수로 있다.)[소수 판별 알고리즘]1) 1 이라면 무조건 소수가 아니다.2) 2~(7/2) 값까지 모두 나눠봤을 때 모두 나머지가 0이 아니면 된다. // 소수 판별 logic // // 7이 소수인지 아닌지 판별하려면, 2~(7/2) 값까지 모두 나눴을 때 나머지가 0이 아니면 된다. .. 2024. 11. 30. [JAVA] 유클리드 호제법 (최대공약수, 최소공배수) Summary1. 최대공약수와 최소공배수를 유클리드 호제법을 이용하여 구현한다.이론[1. 최대공약수 - GCD(Greatest Common Divisor]두 수가 공통으로 가지고 있는 약수 중 가장 큰 수= 최대값 / 공통으로 가지고 있는 약수 중에서 [1-1. N이 작은 경우][로직 예시 - N이 작은 경우]12 18 의 최대공약수 구하기1) 1부터 12 18 중 최솟값 까지 for문을 돌리면서 12 18 과 나누어 떨어지는지 체크 1-1) 만약 두 수 모두 나누어 떨어진다면 최댓값을 저장한다. public static int maxCommonDivision(int n, int m) { int ans = 0; for(int i=1; i 하지만, 두 수가 1835813035.. 2024. 11. 30. 이전 1 2 3 4 ··· 9 다음