본문 바로가기

분류 전체보기

(291)
Create React App Create React App boilerplate React 프로젝트 개발에 필수요소를 자동으로 구성하는 방법 완제품을 구매한다. 📌 CRA 프로젝트 세팅 $ ls #현재 내가 위치하고 있는 곳이 어디인지 확인해보세요. $ cd 폴더이름 #리액트 프로젝트를 생성하고 싶은 폴더로 들어갑니다. $ yarn create react-app week-1 #프로젝트 생성! 오류 발생... $ yarn create react-app week-2 yarn create v1.22.19 [1/4] Resolving packages... warning create-react-app > tar-pack > tar@2.2.2: This version of tar is no longer supported, and will no..
React 개발 환경 세팅 React 개발 환경 세팅 📌 크롬 브라우저 https://www.google.co.kr/chrome/ Chrome 웹브라우저 더욱 스마트해진 Google로 더 간편하고 안전하고 빠르게. www.google.com 📌 VScode https://code.visualstudio.com/ Visual Studio Code - Code Editing. Redefined Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications. Visual Studio Code is free and available on your favorite platform - Li..
React 소개 및 JavaScript 문법 React 소개 및 JavaScript 문법 📌 UI를 Building한다? Web 또는 App Application의 UI, 즉, 보여주는 부분(Front End)을 구축한다. 📌 React.js란? SPA 기반의 프론트엔드 개발 프레임워크 컴포넌트 단위의 독립적인 블록을 이용한 개발 방법 비슷한 프레임 워크 : AngulaJS, VueJS 📌 SPA란? Single Page Application 한개의 페이지(index.html)로 이루어진 애플리케이션 컴포넌트(벽돌) 단위로 변경사항을 반영하기 때문에 깜빡임 없음 ↔ MPA(Multi Page Application) : 하나의 변경사항을 반영하기 위해 전체 페이지 re-rendering 하므로 깜빡임 현상(UX, 사용자 경험 ↓) 📌 React의 단..
백준 2470 두 용액 백준 2470 두 용액 https://www.acmicpc.net/problem/2470 2470번: 두 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 주어진다. 이 수들은 모두 -1,000,000,000 이상 1,000,00 www.acmicpc.net 배열 정렬후, 각 끝 인덱스 값 합과 target과 비교. 만약 합이 target보다 작으면 left + 1 이동 합이 target보다 크면 right -1 이동 📄 나의 풀이1 # 배열의 index를 left, right로 하고 # 가깝지 않으면 index 이동하는 방식으로 풀어야 하나..? # 두 용액의 합이 0에 가까운지 비교 impo..
Pintos File System Pintos File System Block이란? 의미있는 정보를 담아 두는 논리적인 단위 파일 시스템이 필요한 이유? 파일을 새로 생성할 때, 하드 디스크에 빈공간을 생성 파일에 접근하고자 할때, 하드 디스크에 몇번째 주소에 있는지 알아야 엑세스 가능 파일에 특정 권한이 있을 경우에만, 삭제&수정 가능하도록 관리. Pintos 의 디렉토리 구성은 계층 구조로 루트 디렉토리와 하위 디렉토리로 구성되어 있습니다. 저희는 파일 시스템 작업의 inode 구조와 파일 할당 등의 디렉토리 구성요소에 집중하여 공부해봤습니다. 먼저 말씀드리고 싶은 것은 파일 시스템에서 디렉토리 입니다. 디렉토리 구조는 계층적인 구조를 통해 하위 디렉토리와 파일을 포함할 수 있는 부모-자식 관계를 만듭니다. 여기서 루트 디렉토리는 디..
백준 2110 공유기 설치 백준 2110 공유기 설치 이분탐색! https://www.acmicpc.net/problem/2110 2110번: 공유기 설치 첫째 줄에 집의 개수 N (2 ≤ N ≤ 200,000)과 공유기의 개수 C (2 ≤ C ≤ N)이 하나 이상의 빈 칸을 사이에 두고 주어진다. 둘째 줄부터 N개의 줄에는 집의 좌표를 나타내는 xi (0 ≤ xi ≤ 1,000,000,000)가 www.acmicpc.net 최종적으로 원하는 값이 공유기 설치 간격! mid값이 공유기 설치 간격이 나오도록 코드를 구성하는것이 좋을듯하다. 첫번째 집에는 무조건 공유기를 설치해야 한다. 아래 코드는 답안 코드를 보며 분석! accepted한 나의 코드다. 안보고 짤 수 있을 때까지 반복해서 풀 예정... 📄 나의 코드 import s..
데일리 알고리즘 230525 데일리 알고리즘 230525 프로그래머스, 행렬의 덧셈 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 0으로 초기화된 행렬 리스트 생성 maxtrix = [[0 for c in range(column)] for r in range(row)] 📄 나의 코드 arr1 = [[1,2],[2,3]] arr2 = [[3,4],[5,6]] def solution(arr1, arr2): result = [[0 for col in range(len(arr1[0]))] for row in range(len(arr1))] for r in range(len(arr1)):..
Pintos, Virtual Memory Pintos, Virtual Memory Pintos 가상메모리는 cpu가 RAM(Main Memory)보다 더 많은 메모리를 사용할 수 있게 RAM과 Disk Swap Area을 왔다갔다 해야 한다. 궁극적으로 프로세스에 사용할 수 있는 메모리 양을 효과적으로 늘릴 수 있으며 시스템에 물리적으로 존재하는 것보다 더 많은 메모리가 필요한 프로그램을 실행할 수 있다. 하지만, swap in/out 작업은 디스크 I/O의 도움이 필요하고 비용이 많이 든다. 그러므로 이 과정을 효과적으로 처리하기 위해(최소한으로 swap in/out 하기 위해) 여러 bit 정보를 이용한다. 무한한 메모리를 실현하기 위한 방식은 크게 Virtual address space partitioning, page fault, Pag..
백준 10971, 외판원 순회 2 백준 10971, 외판원 순회 2 2023.05.21 - [알고리즘] - DFS 순열, 조합 도시 1,2,3,4 방문한다고 하면 시작도시를 1이라 정하자, 그러면 2,3,4의 순열 조합으로 나열한 뒤 시작도시, 끝도시를 1로 설정하면 된다. 이런 식으로 코드를 짜기 어렵게 느껴졌다. 참고용 코드를 보며, 왜 이렇게 하는지 따라가 모든 도시를 방문하는 순열조합을 출력해봤다. 그러니 코드가 이해된다!!! 나는 모든 경우를 다 탐색하는 부르트포스 방식으로 문제를 풀어봤다. 📄 test.py # 출발지 도착지 제외하고 순열 N = 4 visited = [False]*N perm = [] def dfs(n, start): if n == 0: perm.append(start+1) print(*perm) perm.p..
DFS 순열, 조합 DFS 순열, 조합 python 내장함수를 사용하지 않고 dfs로 순열 조합을 풀 수 있다. backtracking 개념과 stack 자료구조가 선행되어야 코드를 이해할 수 있다. 이 개념은 N-queen문제를 정리할때 자세히 포스팅 하도록 하겠다. 📄 순열.py import sys input = sys.stdin.readline N, M = map(int, input().rstrip().split()) visited = [False]*N perm = [] def dfs(m): if m == 0: print(*perm) return else: for i in range(N): if visited[i] == False: visited[i] = True perm.append(i+1) dfs(m-1) visi..