목록전체 글 (54)
MDP
Python 시뮬레이션 수학 구현 Silver매 라운드 번호 재배정 규칙으로 두 사람의 대결 라운드를 찾아라N명이 참가하는 토너먼트에서 인접한 번호끼리 대결합니다.김지민과 임한수가 몇 라운드에서 처음 대결하는지 구하는 문제입니다.핵심은 매 라운드 번호 재배정 규칙과 대결 조건 확인 순서입니다.1. 문제 이해 & 접근법라운드 진행 방식1라운드: (1vs2), (3vs4), (5vs6), ...→ 홀수명이면 마지막 번호 자동 진출→ 다음 라운드에서 번호 1번부터 다시 배정번호 재배정 규칙번호 k를 가진 사람의 다음 라운드 번호:💡 핵심 공식현재 번호 k → 다음 라운드 번호 = (k + 1) // 2현재 번호다음 라운드 번호비고1(1+1)//2 = 11vs2 대결, 승자 → 1번2(2+1)//2 = 11v..
📌 이 글은? 공공데이터(전국통합식품영양성분정보)를 기반으로 칼로리 계산 기능을 구현하던 중, DB는 100g 기준인데 실제 요리에서는 '달걀 2개', '양파 1개'처럼 개 단위를 쓴다는 구조적 불일치를 발견했습니다. 이를 해결하기 위한 중간 변환 레이어 설계 과정을 기록합니다.📋 개요 항목내용 발생 환경Python / 로컬DB_데이터적재.ipynb / MySQL tb_food 관련 기술공공데이터(식품영양성분), MySQL, Python (pandas) 관련 테이블tb_food, tb_ingredient_unit (신규 생성) 심각도중간 → 칼로리 계산 기능 구현 시 높음 상태✅ 해결 완료🚨 문제 상황공공데이터를 기반으로 tb_food 테이블을 구축했는데, 데이터를 살펴보니 모든 영..
Java Spring Boot Tomcat ThreadPool HikariCP ThreadPython vs Java 비교부터 웹서버 내부 동작, 스레드 원리까지 — 고트래픽 백엔드에서 Java가 선호되는 이유를 구조적으로 정리합니다. 📋 개요 주제Java vs Python 백엔드 선택 기준 및 내부 동작 이해 핵심 기술Tomcat, ThreadPool, HikariCP, Thread, Spring Boot 학습 목표고트래픽 상황에서 Java가 안정적인 이유를 구조적으로 이해 난이도중급 (Spring Boot 기본 지식 권장)⚔️ 1. Python vs Java — 백엔드 선택 기준백엔드 언어를 선택할 때 가장 많이 비교되는 Python과 Java. 단순한 문법 차이를 넘어, 웹 서버 ..
Python 수학 기하학 두 원의 교점 Silver터렛 — 두 원의 교점 개수 풀이두 터렛의 거리 정보로 적의 위치(두 원의 교점)를 찾아라두 터렛의 위치와 각각의 거리가 주어졌을 때, 류재명이 있을 수 있는 위치의 수를 구하는 문제입니다.터렛 위치 = 원의 중심, 거리 = 반지름으로 바꾸면 두 원의 교점 개수를 구하는 기하 문제입니다.핵심은 sqrt 없이 제곱끼리 비교해 부동소수점 오차를 피하는 것입니다.1. 문제 이해 & 접근법류재명은 조규현으로부터 거리 r1, 백승환으로부터 거리 r2 만큼 떨어진 곳에 있습니다. 이를 원으로 표현하면:조규현의 터렛 위치 = 원 1의 중심 (x1, y1)조규현이 계산한 거리 r1 = 원 1의 반지름백승환의 터렛 위치 = 원 2의 중심 (x2, y2)백승환이 계산한 거..
Python 정렬 그리디 재배열 부등식 Silver 배열의 곱 최솟값 — 정렬과 그리디 풀이 큰 수 × 작은 수 조합으로 곱의 합을 최소화하라 길이 N인 두 배열 A, B의 같은 인덱스끼리 곱한 합 S를 최소로 만들기 위해 A를 재배열하는 문제입니다. 핵심은 "큰 수 × 작은 수" 조합, 즉 재배열 부등식(Rearrangement Inequality)을 이용하는 것입니다. 1. 문제 이해 & 접근법 S = A[0]×B[0] + ... + A[N-1]×B[N-1] 에서 A만 재배열할 수 있다. S를 최소로 만들려면 어떻게 배열해야 할까? 핵심 관찰 — 직관적 이해 A = [1, 5], B = [2, 4] 라고 하면: 배열 방식계산결과..
Spring Boot Spring Data JPA MySQL 8.0 Pagination AWS EC2 ✅ 해결 완료 📋 개요 발생 환경Spring Boot / FoodRepository (식재료 목록 조회 API) 관련 기술Spring Data JPA, Pagination, MySQL 인프라 구조사용자 → Nginx (AWS EC2) → TailScale VPN → 로컬 서버 (DB) 심각도중간 → 데이터 증가 시 높음 상태✅ 해결 완료 🚨 문제 상황 식재료(Food) 데이터가 70만 건으로 증가하면서 목록 조회 API에서 뒤쪽 페이지로 갈수록 응답 속도가 눈에 띄게 느려지는 현상이 발생했다. 앞 페이지는 ..
Python 구현 시뮬레이션 나머지 연산 SilverMisfits 아카데미 — 종이 방향과 나머지 연산 풀이원형 종이 전달 시뮬레이션에서 나쁜 말을 쓴 아이를 찾아라n명의 아이들이 원형으로 앉아 종이를 왼쪽으로 돌리며 메시지를 씁니다.N(나쁜 메시지)을 발견하면 누가 썼는지 역추적하는 문제입니다.핵심은 "종이 전달 방향"과 "나머지 연산"으로 작성자 인덱스를 정확히 계산하는 것입니다.1. 문제 이해 & 접근법처음 이 문제를 보면 활동의 서사에 집중하게 된다. 하지만 실제 로직으로 추상화하면 단순한 구조가 드러난다.핵심 관찰종이는 왼쪽으로 전달된다입력 순서가 곧 왼쪽 방향이다. 0번 아이의 종이는 1번 → 2번 → ... → (n-1)번 순으로 전달된 뒤 0번에게 돌아온다.자기 종이에 자기가 메시지를 쓰지..
MDP TIL TIL 2025. 1. 1. [빅데이터] Hadoop vs Kafka 완벽 비교:개념부터 실무 적용까지 로그 파일 저장부터 실시간 스트리밍까지, 두 기술의 차이를 명확히 이해하고 올바른 선택을 하자 Hadoop Kafka 빅데이터 분산처리 스트리밍 데이터파이프라인 목차 문제 상황 & 배경 Apache Hadoop Apache Kafka 접근법 비교 실무 적용 — Lambda 아키텍처 어떤 상황에서 무엇을 선택할까? 핵심 정리 1. 문제 상황 & 배경 서버를 운영하다 보면 반드시 마주치는 질문이 있다. "로그..