목록고민 (38)
happy coding
SELECT USER_ID, PRODUCT_ID FROM ONLINE_SALE GROUP BY USER_ID, PRODUCT_ID HAVING COUNT(*) >= 2 ORDER BY USER_ID, PRODUCT_ID DESC 다시 봐야할 문제
SELECT CAR_ID, CASE WHEN ROUND(AVG(DATEDIFF(END_DATE, START_DATE)), 1) >= 7 THEN ROUND(AVG(DATEDIFF(END_DATE, START_DATE)), 1) ELSE 0 END AS AVERAGE_DURATION FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY GROUP BY CAR_ID HAVING AVERAGE_DURATION != 0 ORDER BY AVERAGE_DURATION DESC, CAR_ID DESC; 이따구로 짰는데 결과는 '틀렸습니다.'였다. 너무 복잡하게 한 것 같아서 다시 코딩 SELECT CAR_ID, ROUND(AVG(DATEDIFF(END_DATE, START_DATE)+1),1) AS..
정수형 배열을 자르는 방법은 배열의 일부분을 새로운 배열로 만드는 것을 의미하는데, 여기에는 2가지 방법이 있다. 1. 반복문을 통한 배열 복사 : public class ArraySlicingExample { public static void main(String[] args) { int[] originalArray = {1, 2, 3, 4, 5}; int startIndex = 1; int endIndex = 3; // endIndex는 자를 범위에 포함되지 않음 int newSize = endIndex - startIndex; int[] slicedArray = new int[newSize]; for (int i = startIndex, j = 0; i < endIndex; i++, j++) { s..
https://st-lab.tistory.com/261 [백준] 1920번 : 수 찾기 - JAVA [자바] https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 st-lab.tistory.com 위는 참고한 블로그, 이 블로그는 공부기록용이기에 적어둔다. binarySearch 를 이용하는 문제였는데 처음으로 알고리즘 문제를 본 것 같다.. 처음 이분탐색인지 생각을 못하고 마구잡이로 하다가 앗 이게 아닌데 하고 검색해서 천사님의 블로그를 보고 해결했다. import ja..
import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); Set words = new HashSet(); // 중복 제거를 위한 Set 사용 for (int i = 0; i < N; i++) { words.add(br.readLine()); // 중복 제거된 단어 저장 } List sortedWords = new ArrayList(words); // ..
import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); String[][] data = new String[N][2]; for (int i=0 ; i Integer.parseInt(arr[0]))); for (int i=0 ; i
import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); boolean[] remainderExists = new boolean[42]; // 0부터 41까지의 나머지에 대한 존재 여부 배열 for (int i = 0; i < 10; i++) { int num = Integer.parseInt(br.readLine()); int numCorr = num % 42; remainderExists[numCorr] = true; } int count = 0; for..
import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); String[] words = new String[N]; for (int i=0 ; i< words.length ; i++) { words[i] = br.readLine(); } int minLength = Integer.MAX_VALUE; for (String word : words) { mi..