목록전체 글 (14)
수리 공작소
JAVA의 역사 [개발] 선마이크로칩스의 James Gosling이 이끄는 팀 [개요] 당시 미국 대선에 출마한 Al Gore의 공약 중, information highway라는 공약이 있었다. 이에 영감을 얻어 제임스 고슬링의 초기 아이디어로는 가전 제품 부착용 프로그래밍 언어를 만들어보자는 시도를 했음. (왜 기존의 언어를 사용하지 않고? -> 가전 제품과 컴퓨터는 사용 대상 자체가 다르므로 다른 특성을 가져야한다고 생각.) 그래서 제임스 고슬링의 design goal은 다음과 같았다. 컴퓨터용 언어인 C언어보다 쉽고, 안전하고, 객체 지향인 언어를 만드는 것이었다. 하지만 Al Gore가 낙선을 하게 되고 원래 목표하던 가전 제품 대상의 언어로 사용하기 어려워졌다. 하지만 그때 "웹"의 급부상(19..
참고 교재 - 데이터베이스 개론 2판, 김연희 지음 데이터베이스는 다량의 데이터가 있는 저장소이다. 그렇다면 데이터베이스 관리 시스템은 무엇일까? 과거의 데이터베이스 관리 시스템 과거에는 응용프로그램 별로 데이터를 따로 관리했다. 파일 형태로 저장하여 관리하기에 이 시스템을 파일 시스템이라고 한다. 파일 시스템을 운영체제 안에 내제되어있는 소프트웨어이다. 이 시스템에는 다음과 같은 단점이 있었다. 1. 데이터의 중복성 같은 데이터라도 다른 응용 프로그램에서 사용하게 되면 해당 응용 프로그램들이 관리하는 곳에 중복으로 저장이 되어 공간 낭비라 발생했고, 데이터의 무결성 유지가 힘들었다. (데이터 내용 변경 시에 일괄적이 변경이 어려우므로) 2. 응용 프로그램이 데이터 파일에 종속적이다. 응용 프로그램마다 ..
1. Javascript는 HTML의 Element를 변경하고 읽을 수 있다. 2. document는 브라우저의 핵심 object이다. document란 브라우저에서 이미 설정되어있는 객체이다. 역할은 우리가 작성한 html에 접근할 수 있다. document의 내용을 보면 이렇게 우리가 설정한 값들이 포함되어 속성으로 들어가있고 이 object 객체를 통해 우리는 다음과 같이 값에 접근할 수 있다. 또한, 1번에서 말했다시피 접근뿐만 아니라 값을 변경할 수도 있다. 3. document.getElementById 라는 프로퍼티는 우리가 설정하나 태그의 id로 값을 가져올 수 있다. 이러한 작업은 app.js에서도 가능하다. (javascript니까) 객체 안의 속성을 모두 바꿀 수 있고 접근할 수 있다..
1. js, css, html 파일이 있으면 브라우저에서 오픈하는 것은 html 파일이다. html 파일이 js와 css 파일을 모두 가져와서 화면 상에 내용을 보여준다. 2. 변수 타입 종류 const (상수) 변하지 않음. let 값을 바꿀 수 있음.(업데이트 가능) + var도 이젠 있지만 예전 rule임. @ 보통은 기본으로 const를 사용함. @ 우리는 선언에 쓰여진 변수 타입의 종류로 작성자의 의도를 파악할 수 있음. 3. null과 undefined는 다름. 전자는 "비어있는" 변수이고 후자는 "정의되지 않은" 변수이다. 4. .push() -> 배열의 끝에 원소 추가 5. player.name 이나 player["name"]이나 같은 의미이다. const로 정의된 object는 전체를 업..
문제 요약 : 전체 버스 N개가 있고, 그 중 창영이가 이용할 버스가 M개 입력으로 주어진다. 이 버스를 순서대로 탈 때, 들어가는 총 환승 비용으로 계산하는 문제이다. (전체 버스 간의 환승비용은 이차원 배열로 입력받는다.) #include using namespace std; int main() { int allBus = 0, useBus = 0, fee = 0;; // 모든 버스의 수, 창영이가 사용할 버스의 수, 총 환승 요금 cin >> allBus >> useBus; if (allBus 100 || useBus > allBus || useBus < 1) return 0; //조건 필터링 int* listUseBus = new int[useBus]; // 창영이가 사..
영어로 된 문제를 처음 풀어본다...! 영어로 쓰여져 있으면 괜히 더 어려워보인다. 사실은 복잡하지 않은 문제였다! 어쨋든 시작, 문제를 요약하자면 다음과 같이 벽돌은 몇개의 스택으로 나누어 쌓는다고 가정한다. 스택의 길이를 일정하게 유지하지 않고 쌓은 뒤, 최소한의 움직임으로 전체 스택의 길이를 맞추어주는 문제이다. 이때 개인적으로 생각했을 때 잊어버리지 말아야할 조건은 1. 위와 같은 형태를 한 세트라고 두었을 때, 입력은 여러 세트가 가능하다. 2. 0이 입력되었을 때 입력이 끝났음을 알 수 있다. (0에 대해선 계산을 돌지 않는다.) 3. 벽돌의 전체 수는 스택의 개수로 나누어 떨어진다. 즉, 남는 벽돌이 없다는 뜻이다. 다음은 코드이다. 먼저 각 세트의 최소 이동 벽돌 수를 구해주는 함수를 작성..