Cheat Sheet 문자 집합: 컴퓨터가 인식할 수 있는 문자의 모음문자 인코딩: 문자 → 0과 1로 변환문자 디코딩: 0과 1 → 문자로 변환아스키 코드 (ASCII): 초창기 문자 집합, 7비트로 하나의 문자 표현 → 최대 128개의 문자 표현EUC-KR: 한글 인코딩하는 완성형 인코딩 방식, 글자 하나에 2바이트 부여 → 4자리 십육진수로 표현완성형 (강) vs. 조합형(ㄱ+ㅏ+ㅇ) 인코딩 방식유니코드: 여러 나라의 문자들을 표현할 수 있는 표준 문자 집합, 다양한 인코딩 방식 사용대표적으로 UTF-8: 1바이트~4바이트까지 가변 길이의 인코딩 방식 문자 집합과 인코딩문자 집합: 컴퓨터나 인식할 수 있는 문자의 모음문자 인코딩: 문자를 0과 1로 변환사람이 이해할 수 있는 문자를 0과 1로 이..
Cheat Sheet 정보 단위가장 작은 정보 단위: 비트 → 바이트(8비트) → kB(1,000byte) → MG → GB → TB워드(word): CPU가 한 번에 처리할 수 있는 데이터의 크기 이진법이진법: 0과 1만으로 모든 숫자를 표현, 플래그를 통해 양수/음수를 구분함음수 표현 방법 2의 보수: 어떤 수를 그보다 큰 2^n에서 뺀 값모든 0과 1을 뒤집고, 거기에 1을 더하는 방법도 가능십육진법: 10~15를 A~F로 표기함, 이진수로 변환하기 쉬움 (십육진수 한 글자=4비트의 이진수) 정보 단위0과 1을 나타내는 가장 작은 정보 단위는 비트(bit)프로그램은 수많은 비트로 이루어져 있음n비트는 2^n 가지 정보를 표현 가능8비트 = 1바이트(byte), 킬로바이트(kB), 메가바이트(MB..
검색 결과 페이지네이션의 필요성검색 결과가 많아지면 슈퍼베이스의 쿼리 개수 제한(1,000개)을 초과하거나 성능이 저하될 수 있다.이를 해결하기 위해 검색 결과를 n개씩 나눠서 가져오는 페이지네이션 기능을 구현했다. page 쿼리 파라미터 추가검색 페이지의 URL을 `/search?q=hello&page=2`와 같이 변경하여 검색어와 페이지 정보를 포함하도록 설정한다. 검색어로 URL 업데이트하기import { useRouter, useSearchParams, usePathname } from "next/navigation";const { replace } = useRouter();const pathname = usePathname();const searchParams = useSearchParams()..
문제https://school.programmers.co.kr/learn/courses/30/lessons/138476경화는 과수원에서 귤을 수확했습니다. 경화는 수확한 귤 중 'k'개를 골라 상자 하나에 담아 판매하려고 합니다. 그런데 수확한 귤의 크기가 일정하지 않아 보기에 좋지 않다고 생각한 경화는 귤을 크기별로 분류했을 때 서로 다른 종류의 수를 최소화하고 싶습니다.예를 들어, 경화가 수확한 귤 8개의 크기가 [1, 3, 2, 5, 4, 5, 2, 3] 이라고 합시다. 경화가 귤 6개를 판매하고 싶다면, 크기가 1, 4인 귤을 제외한 여섯 개의 귤을 상자에 담으면, 귤의 크기의 종류가 2, 3, 5로 총 3가지가 되며 이때가 서로 다른 종류가 최소일 때입니다.경화가 한 상자에 담으려는 귤의 개수 ..
Cheat Sheet 컴퓨터가 이해하는 정보: 명령어, 데이터CPU: 명령어를 읽고 해석하고 실행함ALU(계산기), 레지스터(임시 저장 장치), 제어장치(제어 신호 내보내고, 명령어 해석)주기억장치(메모리): 현재 실행되는 프로그램을 저장보조기억장치: 전원이 꺼져도 보관할 프로그램을 저장입출력장치: 컴퓨터 외부에 연결되어 내부와 정보 교환할 수 있는 부품시스템 버스: 컴퓨터의 핵심 부품들이 정보를 주고받는 통로주소 버스, 데이터 버스, 제어 버스 컴퓨터가 이해하는 정보컴퓨터가 이해하는 정보에는 데이터와 명령어가 있음명령어는 컴퓨터를 작동시키는 정보컴퓨터는 0과 1로 표현된 정보만을 이해함컴퓨터는 명령어를 처리하는 기계 컴퓨터의 4가지 핵심 부품중앙처리장치(CPU), 주기억장치(메모리), 보조기억장치,..
문제https://school.programmers.co.kr/learn/courses/30/lessons/42885 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다.예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 50kg]이고 구명보트의 무게 제한이 100kg이라면 2번째 사람과 4번째 사람은 같이 탈 수 있지만 1번째 사람과 3번째 사람의 무게의 합은 150kg이므로 구명보트의 무게 제한을 초과하여 같이 탈 수 없습니다.구명보트를 최대한 적게 사용하여 모든 사람을 구출하려고 합니다.사람들의 몸무게를 담은 배열 people과 구명보트의 무게 제한 limit가 매개변수로 주어질 때, 모든 사람을..
문제OO 연구소는 한 번에 K 칸을 앞으로 점프하거나, (현재까지 온 거리) x 2 에 해당하는 위치로 순간이동을 할 수 있는 특수한 기능을 가진 아이언 슈트를 개발하여 판매하고 있습니다. 이 아이언 슈트는 건전지로 작동되는데, 순간이동을 하면 건전지 사용량이 줄지 않지만, 앞으로 K 칸을 점프하면 K 만큼의 건전지 사용량이 듭니다. 그러므로 아이언 슈트를 착용하고 이동할 때는 순간 이동을 하는 것이 더 효율적입니다. 아이언 슈트 구매자는 아이언 슈트를 착용하고 거리가 N 만큼 떨어져 있는 장소로 가려고 합니다. 단, 건전지 사용량을 줄이기 위해 점프로 이동하는 것은 최소로 하려고 합니다. 아이언 슈트 구매자가 이동하려는 거리 N이 주어졌을 때, 사용해야 하는 건전지 사용량의 최솟값을 return하는 s..
문제https://school.programmers.co.kr/learn/courses/30/lessons/42842Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다.Leo는 집으로 돌아와서 아까 본 카펫의 노란색과 갈색으로 색칠된 격자의 개수는 기억했지만, 전체 카펫의 크기는 기억하지 못했습니다.Leo가 본 카펫에서 갈색 격자의 수 brown, 노란색 격자의 수 yellow가 매개변수로 주어질 때 카펫의 가로, 세로 크기를 순서대로 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항갈색 격자의 수 brown은 8 이상 5,000 이하인 자연수입니다.노란색 격자의 수 yellow는 1 이..
문제https://www.acmicpc.net/problem/24511 입력 출력 예제 나의 풀이1 (실패)from collections import dequeN = int(input())A = list(map(int, input().split()))B = deque(map(int, input().split()))M = int(input())C = list(map(int, input().split()))for num in C: x = num for i in range(N): if A[i] == 0: # queue temp = B[i] B[i] = x x = temp print(x, end=" ..
퇴사 후 1년, 나는 무엇을 했을까?작년 초, 회사 사정으로 인해 퇴사(사실상 권고사직)를 한 지 벌써 1년이 지났다. 그동안 "내가 만들고 싶은 서비스를 만들고 싶다"라는 이유로 본격적인 취업 준비를 미뤄왔다. 이력서에 추가할 프로젝트를 만들겠다는 핑계를 댔지만, 사실은 실패가 두려웠던 것 같다. 수많은 기업에 지원하고 탈락하는 과정을 반복하는 것이 두려웠던 것이다. 교정일기: 치아교정 일정, 치아사진 관리 - Google Play 앱치아교정 진행 상황을 한곳에서 기록할 수 있어요!play.google.com 그래도 목표했던 앱 출시라는 목표는 달성했다. 플러터를 독학해서 앱을 만들었고, 플레이스토어에 출시까지 헀다. 지금도 소소하지만 꾸준한 사용자 유입이 이루어지고 있다. You will never..