본문 바로가기

전체 글110

[백준/C++] #1744 수묶기 (Greedy) 문제https://www.acmicpc.net/problem/1744 풀이 (37m / 한번에 x) 수들끼리 짝지어서 곱해 더할 수도 있고, 그냥 더할 수도 있는데, 합이 최대가 되도록 해야했다. 생각났던 로직 순서대로- 가장 큰 양수부터 시작해서 두개씩 짝지어서 곱해서 더함- 양수의 개수가 홀수라면 남은 양수는 그냥 더함- 1은 다른 양수랑 곱해서 더하기보다 그냥 더하는게 더 커지니 따로 그냥 더함- 0도 있고 홀수도 있다면, 0 개수만큼 가장 작은 홀수들 부터 없애기+) 음수가 2개 이상이라면 0이랑 상쇄시키기보다 일단 가장 작은 홀수들부터 두개씩 곱해서 양수 만들기+) 음수가 홀수개이고, 0이 있다면 마지막으로 가장 큰 음수는 0이랑 상쇄시키기. 0이 없다면 그냥 더하기 생각보다 예외 케이스들이 바.. 2025. 3. 26.
[Network] CH6. 웹 서버에 도착하여 응답 데이터가 웹 브라우저로 돌아간다. 성공과 실패를 결정하는 1%의 네트워크 원리를 읽고 정리한 내용입니다. 목차서버의 개요서버의 수신 동작웹 서버 소프트웨어가 리퀘스트 메시지의 의미를 해석하여 요구에 응한다. 웹 브라우저가 응답 메시지를 받아 화면에 표시한다. 패킷은 웹 서버 앞의 방화벽, 캐시 서버, 부하 분산 장치를 통과한 후, 웹 서버 안으로 들어가는데, 해당 내용에 대해 다루려 한다.1️⃣ 서버의 개요 (구조)서버는 동시에 복수의 클라이언트와 통신 동작을 실행한다. 다만, 하나의 프로그램으로 여러 클라이언트들의 상대를 처리하는 것은 각 클라이언트와의 대화 진행 상황을 파악해야 하기에 어렵다. -> 그래서 클라이언트가 접속할 때마다 새로운 서버 프로그램을 작동하여 서로 애플리케이션이 클라이언트와 1대1로 대화한다. 서버 프로그램은 접.. 2025. 2. 24.
[DB/MYSQL] SQL 고득점 Kit - SELECT문(Lv.3~5) 해당 글은 프로그래머스의 'SQL 고득점 Kit'을 풀고 작성한 글입니다. https://school.programmers.co.kr/learn/challenges?tab=sql_practice_kit 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr SELECT > 오프라인/온라인 판매 데이터 통합하기 (Lv.4)https://school.programmers.co.kr/learn/courses/30/lessons/131537 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제) ONLINE_SALE .. 2025. 2. 21.
[DB/MYSQL] SQL 고득점 Kit - 집계함수 해당 글은 프로그래머스의 'SQL 고득점 Kit'을 풀고 작성한 글입니다. https://school.programmers.co.kr/learn/challenges?tab=sql_practice_kit 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 집계함수 > 가격이 제일 비싼 식품의 정보 출력하기 (Lv.2)https://school.programmers.co.kr/learn/courses/30/lessons/131115  프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제) FOOD_PRODUCT.. 2025. 2. 21.
[백준/C++] #11559 Puyo Puyo (BFS) 문제https://www.acmicpc.net/problem/11559 풀이 (1h 16m / 한번에 O)뭐 거창한거 없이 그냥 하라는 대로 하면 되었다.  한 시점에 터지는건 하나로 치니까, 시점을 반복문(while)을 통해 구분하자는 생각이 들었다. 그래서 반복문 안에서 flag를 통해 한 시점에 터지는게 있는지를 나타냈다. flag가 0이면 그냥 반복문을 나가고, 연쇄가 몇번 연속으로 일어났는지 출력해줬다.  터지는지 파악하는 데에 bfs를 사용했다. 왜냐하면 동서남북 인접한 곳에 4개의 같은 색의 칸이 있는지 파악을 해야 했기 때문이다. 그렇게 4개 이상의 같은 색의 칸이 인접해있으면, 탐색했던 곳이 기록된 visited 배열을 사용해 해당 위치를 터뜨렸다. 동시에 더 터뜨릴 칸들이 없으면, 중력.. 2025. 2. 19.
[Network] CH5. 서버측의 LAN에는 무엇이 있는가? 성공과 실패를 결정하는 1%의 네트워크 원리를 읽고 정리한 내용입니다. 목차웹 서버의 설치 장소방화벽의 원리와 동작복수 서버에 리퀘스트를 분배한 서버의 부하 분산캐시 서버를 이용한 서버의 부하 분산콘텐츠 배포 서비스패킷은 서버측의 POP로 운반된 후, 서버 바로 앞의 방화벽, 캐시 서버, 부하 분산 장치 등을 통과하는데, 해당 과정에 대해 알아보자. 1️⃣ 웹 서버의 설치 장소인터넷을 빠져나와서 서버에 도착할 때까지의 여정은 서버의 설치 장소에 따라 다르다. 서버가 설치되는 장소를 크게 세 가지로 분류하면 다음과 같다.  (A)와 같이 사내의 LAN에 서버를 설치하고, 인터넷에서 직접 액세스하는 경우는 IP 주소의 부족과 보안상의 이유로 주류에서 밀려났다. - IP 주소의 부족: 사내 LAN에 설치한 기.. 2025. 2. 19.