본문 바로가기
728x90
반응형

Leetcode43

197. Rising Temperature 날씨 테이블(Weather)이 주어졌을 때, 각 날짜의 온도가 이전 날짜(어제)보다 높은 날짜의 ID를 찾는 SQL 쿼리를 작성하는 것입니다.# Write your MySQL query statement belowSELECT A.IDFROM WEATHER AS AINNER JOIN WEATHER AS BON (DATE_SUB(A.RECORDDATE, INTERVAL 1 DAY) = B.RECORDDATE)WHERE A.TEMPERATURE > B.TEMPERATURE;Self-Join + DATEDIFF/SUBDATE 함수: 날씨 테이블을 자체 조인하여 각 행을 이전 행과 비교합니다. 온도가 더 높고 날짜 차이가 하루인 경우 결과로 선택합니다.DATE_SUB(a.recordDate, INTERVAL 1 .. 2024. 5. 10.
2634. Filter Elements from Array 정수 배열 arr과 필터링 함수 fn이 주어졌을 때, 조건을 만족하는 요소만 포함하는 새로운 배열을 반환하는 것입니다. 필터링 함수 fn은 arr[i]와 i를 인자로 받아 참인지 거짓인지 평가하는 함수입니다/** * @param {number[]} arr * @param {Function} fn * @return {number[]} */var filter = function(arr, fn) { const ans = []; arr.forEach((a,index)=>{ if(fn(a,index) != false){ ans.push(a); } }); return ans;};filter 함수는 입력 배열 arr의 각 요소를 순회하며 필터링 함수 .. 2024. 5. 10.
2665. Counter II 초기 정수 init를 받아 세 가지 함수를 가진 객체를 반환하는 함수 createCounter를 작성하는 것입니다. 이 세 가지 함수는 다음과 같습니다: increment(): 현재 값을 1 증가시킨 다음 해당 값을 반환합니다. decrement(): 현재 값을 1 감소시킨 다음 해당 값을 반환합니다. reset(): 현재 값을 init으로 설정한 다음 해당 값을 반환합니다. /** * @param {integer} init * @return { increment: Function, decrement: Function, reset: Function } */var createCounter = function(init) { let cur = init; return{ increment:.. 2024. 5. 10.
2704. To Be Or Not To Be expect라는 함수를 작성해야 하는데, 이 함수는 어떤 값을 입력으로 받아서 두 개의 함수를 가진 객체를 반환해야 합니다. toBe(val): 다른 값을 받아서, 두 값이 서로 동일하면 true를 반환합니다. 만약 두 값이 동일하지 않다면, "Not Equal"이라는 에러를 발생시킵니다. notToBe(val): 다른 값을 받아서, 두 값이 서로 다르면 true를 반환합니다. 만약 두 값이 동일하다면, "Equal"이라는 에러를 발생시킵니다./** * @param {string} val * @return {Object} */var expect = function(val) { return { toBe: function(val2){ if(val === val2){ .. 2024. 5. 7.
1581. Customer Who Visited but Did Not Make Any Transactions 방문한 고객 중에서 거래를 하지 않은 고객을 찾는 문제입니다.SELECT v.CUSTOMER_ID, COUNT(*) as count_no_transFROM VISITS vLEFT JOIN TRANSACTIONS t ON v.VISIT_ID = t.VISIT_IDWHERE t.VISIT_ID IS NULLGROUP BY v.CUSTOMER_ID;COUNT(*)는 SQL에서 사용하는 집계 함수입니다. 이 함수는 특정 쿼리 결과의 행 수를 반환합니다. *는 모든 행을 의미하므로, COUNT(*)는 결과 집합의 모든 행을 세는 것을 의미합니다. 예를 들어, SELECT COUNT(*) FROM VISITS; 쿼리는 VISITS 테이블에 있는 모든 행의 수를 반환합니다. 따라서, 위의 쿼리에서 COUNT(*) a.. 2024. 5. 6.
67. Add Binary 두 이진 문자열을 입력으로 받아 그 합을 이진 문자열로 반환하는 문제입니다.public class Solution { public string AddBinary(string a, string b) { StringBuilder sb = new StringBuilder(); int i = a.Length -1, j = b.Length -1, carry = 0; while(i >= 0 || j >= 0){ int sum = carry; if(j >= 0) sum += b[j--] - '0'; if(i >= 0) sum += a[i--] - '0'; sb.Insert(0,(char)((sum.. 2024. 5. 3.
28. Find the Index of the First Occurrence in a String haystack 문자열에서 needle 문자열이 처음으로 나타나는 위치를 찾아 반환합니다. 만약 needle 문자열이 haystack 문자열에 없다면 -1을 반환합니다. 또한, needle 문자열이 비어있는 경우는 haystack 문자열의 시작 위치인 0을 반환합니다. public class Solution { public int StrStr(string haystack, string needle) { if(string.IsNullOrEmpty(needle)) return 0; for(int i = 0;i  haystack 문자열의 각 위치에서 시작하여 needle 문자열의 길이만큼의 부분 문자열이 needle 문자열과 일치하는지 확인합니다. 이 방법은 문자열 검색 알고리즘.. 2024. 5. 2.
728x90
반응형