전체 글(754)
-
[알고리즘][X] 5월 식품들의 총매출 조회하기
문제 설명 다음은 식품의 정보를 담은 FOOD_PRODUCT 테이블과 식품의 주문 정보를 담은 FOOD_ORDER 테이블입니다. FOOD_PRODUCT 테이블은 다음과 같으며 PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICE는 식품 ID, 식품 이름, 식품코드, 식품분류, 식품 가격을 의미합니다. Column nameTypeNullable PRODUCT_IDVARCHAR(10)FALSE PRODUCT_NAMEVARCHAR(50)FALSE PRODUCT_CDVARCHAR(10)TRUE CATEGORYVARCHAR(10)TRUE PRICENUMBERTRUE FOOD_ORDER 테이블은 다음과 같으며 ORDER_ID, PRODUCT_ID, AMOUNT, PRODU..
2023.09.17 -
[알고리즘] 없어진 기록 찾기
문제 설명 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAMETYPENULLABLE ANIMAL_IDVARCHAR(N)FALSE ANIMAL_TYPEVARCHAR(N)FALSE DATETIMEDATETIMEFALSE INTAKE_CONDITIONVARCHAR(N)FALSE NAMEVARCHAR(N)TRUE SEX_UPON_INTAKEVARCHAR(N)FALSE ANIMAL_..
2023.09.17 -
[알고리즘][3] 순위
문제 설명 n명의 권투선수가 권투 대회에 참여했고 각각 1번부터 n번까지 번호를 받았습니다. 권투 경기는 1대1 방식으로 진행이 되고, 만약 A 선수가 B 선수보다 실력이 좋다면 A 선수는 B 선수를 항상 이깁니다. 심판은 주어진 경기 결과를 가지고 선수들의 순위를 매기려 합니다. 하지만 몇몇 경기 결과를 분실하여 정확하게 순위를 매길 수 없습니다. 선수의 수 n, 경기 결과를 담은 2차원 배열 results가 매개변수로 주어질 때 정확하게 순위를 매길 수 있는 선수의 수를 return 하도록 solution 함수를 작성해주세요. 제한사항 선수의 수는 1명 이상 100명 이하입니다. 경기 결과는 1개 이상 4,500개 이하입니다. results 배열 각 행 [A, B]는 A 선수가 B 선수를 이겼다는 의..
2023.09.17 -
[Spring] IoC, DI에 대한 나름의 이해
IoC = Inversion of Control 즉, 통제권의 역전이다. 원래 객체를 선택하는 통제권은 클라이언트 코드가 가지고 있다. 하지만 이것을 선택하는 통제권을 AppConfig와 같은 어셈블러, 컨테이너에 넘기는 것을 IoC라고 한다. 그러한 관점에서 프레임워크는 IoC를 기반으로 한다. 전체 로직 중 일부가 나의 코드로 사용되기 때문이다. 반면에 라이브러리는 내가 짠 코드를 실행시키기 때문에 통제권이 나한테 있다. 정적인 클래스 의존 관계는 클라이언트 코드가 인터페이스에만 의존하면 이는 코드를 실행시키지 않고도 그 의존관계를 파악할 수 있다. 이러한 의존관계가 정적인 클래스 의존 관계다. 아래는 확실히 정해진 것이다. 동적인 객체 인스턴스 의존 관계는 실제 실행시키기 전까지는 어떠한 구현체를 ..
2023.09.16 -
[CS] 다익스트라에 대한 나름의 이해
다익스트라에서 중요한 기준은 시작점이다. 모든 건 시작점을 기준으로 생각되어야 한다. 왜냐하면 시작점과 관계를 가지기 때문이다. 두번째 포인트는 현재 선택되어 있는 노드는 어떠한 경로로든 그 노드까지 가는게 그 순위라는 것이다. 예를 들어, 1번이 시작점이다. 그리고 차례대로 선택된 노드가 5, 2, 6번이라면 1번에서 5번으로 가는 길이 어떻게든 2번까지 가는 길보다 짧다는 것이다. 세번째 포인트는 현재 선택되어 있는 노드는 아직 선택되지 않은 다른 어떤 노드보다 출발점부터 가는길이 짧다는 것이다. 네번째 포인트는 선택되지 않은 노드는 두가지 선택점을 가진다는 것이다. 현재 선택된 노드에서 가는게 더 짧은 것인가 아니면 어떤 경로인지는 모르지만 최단 경로가 더 짧은 것이냐다. 일단 출발점에서 현재 선택..
2023.09.16 -
[Java] volatile 변수에 대한 나름의 이해
volatile은 캐싱이 되지 않게 해서 메모리에서 읽고 쓰도록 한다. 이를 통해 쓰레드는 최신의 업데이트된 값을 받을 수 있게 된다. private static volatile int a = 3;
2023.09.16