본문 바로가기

전체 글625

leetcode : 1934. Confirmation Rate leetcode : 1934. Confirmation Rate[leetcode : 1934. Confirmation Rate]다이어그램erDiagram Signups { int user_id PK datetime time_stamp } Confirmations { int user_id FK datetime time_stamp PK ENUM action } Signups ||--o{ Confirmations: "has"컨펌 비율 찾기문제 풀이MySQL 1WITH TEMP AS ( SELECT USER_ID, ROUND(COUNT(IF(ACTION='CONFIRMED',1,NULL))/COUNT(*),2) AS r.. 2025. 2. 13.
[파이썬, 자바] 백준 20158 : 사장님 달려가고 있습니다 (플레5) [파이썬, 자바] 백준 20158 : 사장님 달려가고 있습니다 (플레5)https://www.acmicpc.net/problem/20158풀이방향성 생각지문이 조금 애매하다. 테케 3번을 통해서 잘 이해해보자.현재 시간이 t이고 가속도가 a일 때, 가속도가 붙은 방향으로 a+1만큼 이동해야한다.도착 지점에서 진입이 막히는 경우는 nt부터이다.하지만, 도착지점까지 달려나갈 때 진입이 막히는 경우는 nt+1부터이다.state는 4가지로 구분한다. x,y,dire(방향),accel(가속도)같은 위치에 도착하더라도 어떤 방향이고, 어떤 가속도로 왔냐에 따라서 다음 노드로 가는데 영향을 준다.가속도는 최대 15까지 가능하다 (15 이상이면 한 방향으로 계속 달렸다는건데, 이 때 항상 맵 밖을 넘어가게 되어있다) .. 2025. 2. 13.
[파이썬,자바] 프로그래머스 : 지게차와 크레인 (레벨2) [파이썬,자바] 프로그래머스 : 지게차와 크레인 (레벨2)프로그래머스 : 지게차와 크레인 (레벨2)풀이방향성 생각padding을 해줘서 테두리를 추가한 후, BFS로 외곽과 닿아있는 부분을 감지한다.각 query 실행 -> BFS를 통해서 boundary update. pythondef solution(storage, queries): inside = lambda x,y : 0 return boundary def bfs(): V = [[0]*W for _ in range(H)] V[0][0] = 1 Q = deque([(0,0)]) while Q: x,y = Q.popleft() for dx,dy in d.. 2025. 2. 11.
leetcode : 1907. Count Salary Categories leetcode : 1907. Count Salary Categories[leetcode : 1907. Count Salary Categories]다이어그램erDiagram Accounts { int account_id int income }각 소득그룹 별 몇 명 있는지 확인하기기문제 풀이MySQL 1WITH TEMP2 AS ( SELECT *, CASE WHEN INCOME > 50000 THEN 'High Salary' WHEN INCOME 소둑 구간 표본이 없는 경우 GROUP BY에 없어서 더미 데이터를 추가한다.MySQL 2WITH INCOME_LEVEL AS ( SELECT 'High.. 2025. 2. 11.