전체 글 56

[git] 1. CLI 환경에서 txt 파일 버전관리 해보기 - push, pull

1. Push 만들어 뒀던 README.txt 를 이제 원격저장소 Github 에 푸쉬해보자 먼저 Github 에 원격저장소를 하나 생성해보자 Your repositories 로 이동해서 new 를 클릭. Add a README file 을 체크하지 않고 새로운 레파지토리를 하나 만들어 준다. 원격 저장소의 주소를 복사해준다. git remote add origin 명령어를 통해서 만들어 뒀던 원격저장소의 주소를 복사한다. remote add origin 명령어는 로컬저장소에 원격저장소의 주소를 알려준다 git init 을 통해서 생성했던 [.git] 폴더에 원격저장소의 주소가 저장되는 것이다. git remote -v 를 통해서 [.git] 폴더에 저장되어 있는 원격저장소의 주소를 확인할 수 있다. 이..

git 2022.11.06

[git] 1. CLI 환경에서 txt 파일 버전관리 해보기 - checkout

🧐 버전 관리? command + z 키를 활용해서 한글이나, 블로그 글을 쓰다가 이전에 작성한 내용으로 되돌려본 경험들이 있을 것이다. 이전에 작성한 내용이 하나의 버전 이라고 생각하면 편하다. 버전 관리는 하나의 버전에 있는 id 를 통해서 여러가지 버전에 접근할 수 있는 것을 말한다. git 을 사용하면 버전 관리를 정말 쉽게 경험해 볼 수 있다. git이 설치되어 있다면 터미널에서 git --version 을 통해서 현재 git 버전을 확인할 수 있다. 1. git init 터미널 명령어로 desktop > commit_test 경로에 있는 README.txt 에 "hi my name is woong!" 내용을 입력해준다 git init 명령어를 통해서 README.txt 가 있는 폴더에 [.gi..

git 2022.11.06

[Js 딥다이브] 12. 함수 (2)

3. 함수 호출 📌 매개변수와 인수 자바스크립트는 동적 타입 언어이기 때문에, 함수를 정의할때 사용하는 매개변수와 호출할 때 사용하는 인수의 타입과 갯수에 제한이 없다. 인수의 갯수가 매개변수의 갯수보다 많거나 적더라도 에러는 발생하지 않는다. function add(x, y){ return x + y; } console.log(add(2, 4)); // 6 // 인수가 부족한 경우 매개변수 y에 할당된 값이 없으므로 undefined console.log(add(2)); // NaN // 초과된 인수는 arguments 객체에 보존된다 console.log(add(2, 4, 10)); // 6 자바스크립트는 동적 타입 언어이기 때문에, 함수를 정의하는 시점에 매개변수의 타입을 결정할 수 없다. 따라서 ..

javascript/DeepDive 2022.11.06

[Js 딥다이브] 12. 함수 (1)

📌 Js 에서 함수 스코프, 실행 컨텍스트, 클로저, 생성자 함수에 의한 객체 생성, 메서드, this 바인팅, 프로토타입, 모듈화와 깊은 관련이 있기 때문에 js 함수는 정말 중요한 개념이다! 프로그래밍에서 함수를 사용하는 이유? var x = prompt(); var y = prompt(); if (Number(x) === Number(y)){ console.log(true) }else{ console.log(false) } function is_same(a, b){ return Number(a) === Number(b) } console.log(is_same(x, y)) 함수의 가장 큰 장점은 코드의 재사용이다. 함수 없이 두개를 비교해보는 경우를 생각해보면 if / else 를 반복적으로 써야하지..

javascript/DeepDive 2022.11.05

백준 2573 빙산

https://www.acmicpc.net/problem/2573 2573번: 빙산 첫 줄에는 이차원 배열의 행의 개수와 열의 개수를 나타내는 두 정수 N과 M이 한 개의 빈칸을 사이에 두고 주어진다. N과 M은 3 이상 300 이하이다. 그 다음 N개의 줄에는 각 줄마다 배열의 각 행을 www.acmicpc.net 📌 시간을 많이 쓴 이유 시간초과를 해결하느라 시간을 좀 많이 썼다.. pypy3 으로 제출해도 시간초과가 나서 음..큰일났네 생각하고 문제점을 찾기 시작했다. 시간초과 해결순서 iceberg_melts() 라는 함수를 만들어서 1년마다 그래프를 돌면서 상하좌우에 0이 있으면 -1 을 해준다 -> visited 2차원 배열을 만들어서 중복해서 녹일수 없도록 한다 -> year를 1증가지키고 ..

백준 5014 카드 정렬하기

https://www.acmicpc.net/problem/1715 1715번: 카드 정렬하기 정렬된 두 묶음의 숫자 카드가 있다고 하자. 각 묶음의 카드의 수를 A, B라 하면 보통 두 묶음을 합쳐서 하나로 만드는 데에는 A+B 번의 비교를 해야 한다. 이를테면, 20장의 숫자 카드 묶음과 30장 www.acmicpc.net 📌 해결 과정 heap 자료구조의 장점을 정말 잘 느낄수 있는 문제이다. 먼저, 그리디 방식으로 이 문제에 접근해보면 비교횟수의 최솟값을 구해야 하므로 언제 비교횟수가 크게 증가하는지에 대해 생각해볼 필요가 있다. 카드 수가 많은 묶음일수록 최대한 마지막에 비교할 수 있도록 해야한다 예를 들어서, 묶음의 수 : 6 각 묶음에 속한 카드 : [20, 30, 40, 50, 60, 80]..

algorithm/Greedy 2022.11.03

백준 5014 스타트링크

https://www.acmicpc.net/problem/5014 5014번: 스타트링크 첫째 줄에 F, S, G, U, D가 주어진다. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) 건물은 1층부터 시작하고, 가장 높은 층은 F층이다. www.acmicpc.net 📌 해결 과정 https://hwdev.tistory.com/15 [백준] 파이썬 1697 : 숨바꼭질 https://www.acmicpc.net/problem/1697 1697번: 숨바꼭질 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동 hwdev.tistory.com 이 문제와..

[DEEP DIVE] 11. 원시 vs 객체

원시 vs 객체 원시 : 원시 값을 변수에 할당하면 변수가 가르키게 되는 메모리의 주소에 실제 값이 저장된다. 이 변수를 다른 변수에 할당하면, 원시 값이 복사되어 전달된다 객체 : 객체를 변수에 할당하면 변수가 가르키게 되는 메모리의 주소에 참조 값(객체를 저장하고 있는 메모리의 첫번째 주소)이 저장된다. 이 변수를 다른 변수에 할당하면, 참조 값이 복사되어 전달된다 1. 원시 값 원시 값은 변경 불가능한 값이다. 즉, 한번 생성된 원시 값은 읽기 전용으로써 변경할 수가 없다. 🧐 '값을 변경할 수 없다.' 의 구체적인 의미가 무엇일까? var x = 10 x = 20 console.log(x) // 20 변수는 메모리 공간에서 주소를 식별하는 식별자이다. x는 10이 저장된 메모리의 주소를 기억하고,..

javascript/DeepDive 2022.11.02

[DEEP DIVE] 10. 객체 리터럴

1. 객체란? JS 는 객체 기반의 프로그래밍 언어이며, JS 를 구성하는 거의 모든 것이 "객체" 이다! 원시타입(Number, String, Boolean ...)의 데이터를 제외한 나머지는 모두 객체로 취급된다고 생각하면 편하다 !! 원시 타입의 데이터들은 변경 불가능 한 값이다 !! var x = 10 x = 20 console.log(x) // 20 이것은, x의 값이 변경된 것 처럼 보이지만 실제로는 10이 저장된 메모리 주소에 접근해서 10을 20으로 변경하는 것이 아니라, 새로운 메모리 주소에 값 20을 넣고 x가 그것을 가르키도록 하는것이다. 값을 변경하는 것이 아니라 x가 가르키는 메모리 주소가 변경된다. 10이 저장된 메모리 주소는 이제 아무런 변수도 가르키고 있지 않기 때문에 자동..

javascript/DeepDive 2022.10.28

백준 11000 강의실 배정

https://www.acmicpc.net/problem/11000 11000번: 강의실 배정 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (0 ≤ Si < Ti ≤ 109) www.acmicpc.net 📌 해결순서 회의실 배정 [백준] 파이썬 1931 : 회의실 배정 https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 문제 한 개의 회의실이 있는데 이를 사용하고자 하는 N개의 회의에 대하여 회의실.. hwdev.tistory.com 신입사원 [백준] 파이썬 1946 : 신입사원 https://www.a..

algorithm/Greedy 2022.10.13