직사각형 종이를 n번 접으려고 합니다. 이때, 항상 오른쪽 절반을 왼쪽으로 접어 나갑니다. 다음은 n = 2인 경우의 예시입니다. 먼저 오른쪽 절반을 왼쪽으로 접습니다. 다시 오른쪽 절반을 왼쪽으로 접습니다. 종이를 모두 접은 후에는 종이를 전부 펼칩니다. 종이를 펼칠 때는 종이를 접은 방법의 역순으로 펼쳐서 처음 놓여있던 때와 같은 상태가 되도록 합니다. 위와 같이 두 번 접은 후 종이를 펼치면 아래 그림과 같이 종이에 접은 흔적이 생기게 됩니다. 위 그림에서 ∨ 모양이 생긴 부분은 점선(0)으로, ∧ 모양이 생긴 부분은 실선(1)으로 표시했습니다. 종이를 접은 횟수 n이 매개변수로 주어질 때, 종이를 절반씩 n번 접은 후 모두 펼쳤을 때 생기는 접힌 부분의 모양을 배열에 담아 return 하도록 so..
Exlipse 에서는 CTRL + SHIFT + O 눌러 패키지를 자동으로 가져옵니다. 하지만 IntelliJ IDEA 의 경우에는 CTRL + ALT + O "Optimize Imports" 를 누르면 사용되지 않은 가져 오기가 제거되고 패키지는 가져 오지 않습니다. 그리고 최악의 경우 클래스 이름을 클릭하고 ALT + ENTER키를 눌러 패키지를 하나씩 가져와야합니다. 이 것을 해결하기 위해서 밑에 두 개를 체크한 후에 CTRL + ALT + O
문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 array의 길이는 1 이상 100 이하입니다. a..
import React, { render } from 'react'; 차이점은, 보내주는 export 방식의 차이 예를 들어보면 const a = 1; const c = 3; export { a }; export const b = 2; export default c; import d, { a, b as e } from './Example'; console.log(a, e, d); // 1, 2, 3 default로 선언된 내용은 중괄호 {} 없이 받을 수 있으며 변수명이 달라도 된다. 하지만 default로 선언되지 않은 것들은 중괄호 {} 안에서 무조건 보내진 변수명으로 선언! 변수명을 바꾸고 싶은 경우에는 as를 이용해서 바꾼다!
동적 스코프(Dynamic scope) - 함수를 어디서 호출하였는지에 따라 상위 스코프를 결정하는 것 렉시컬 스코프(Lexical scope) 또는 정적 스코프(Static scope) - 함수를 어디서 선언하였는지에 따라 상위 스코프를 결정하는 것 자바스크립트를 비롯한 대부분의 프로그래밍 언어는 렉시컬 스코프 var x = 1; function foo() { var x = 10; bar(); } function bar() { console.log(x); } foo(); // 1 bar(); // 1
// 함수 선언문 function square(number) { return number * number; } // 함수 표현식 var square = function(number) { return number * number; }; 위와 같은 function을 많이 봤을 것이다. 하지만 둘의 차이점을 제대로 모르는 상태에서 무분별하게 사용하는 경우가 많다. 이들은 동작 방식에 차이가 있다. // 함수 선언문 var res = square(5); function square(number) { return number * number; } 함수 선언문으로 정의된 함수는 자바스크립트 엔진이 스크립트가 로딩되는 시점에 바로 초기화하고 이를 VO(variable object)에 저장한다. 즉, 함수 선언, 초기..
수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 입출력 예 participantcompletionreturn [leo, kiki, eden] [e..
오류 내용 ERROR! The server quit without updating PID file (/usr/local/var/mysql/...) - 새로운 mysql버전으로 실행 시키려고 할 때 이 오류가 발생 - 권한 문제 Mac OS: /usr/local/var/mysql/ Linux OS: /var/lib/mysql/ 해결 방법 mysql 인스턴스가 실행 중인지 확인 $ ps -ef | grep mysql 실행 중인 프로세스를 종료 $ kill -15 PID mysql 소유자 확인 $ ls -laF /usr/local/var/mysql/ 소유자를 mysql로 변경한다. $ sudo chown -R mysql /usr/local/var/mysql/ mysql 실행 참고 https://stackove..
스프링 프레임워크의 가장 중요한 특징은 객체의 생성과 의존관계를 컨테이너가 자동으로 관리 한다는 점이다. 컨테이너 컨테이너는 보통 인스턴스의 생명주기를 관리하며, 생성된 인스턴스들에게 추가적인 기능을 제공하도록하는 것이라 할 수 있다. 다시말해, 컨테이너란 당신이 작성한 코드의 처리과정을 위임받은 독립적인 존재라고 생각하면 된다. 컨테이너는 적절한 설정만 되어있다면 누구의 도움없이도 프로그래머가 작성한 코드를 스스로 참조한 뒤 알아서 객체의 생성과 소멸을 컨트롤해준다. 쉽게 프로그래머가 작성한 코드는 컨테이너를 사용하게 됨으로서 프로그래머의 손을 떠나 컨테이너의 영역으로 떠나버리게 된다. (정확히 말하자면 컨테이너가 맘대로 객체를 생성하는 게 아니라 프로그램을 이용하는 이용자의 호출에 의해 컨테이너가 동..
STS에서 Github을 연동하고 프로젝트를 Commit/Push 및 가져오는 방법에 대해서 알아보려고 한다. 두 가지 방법으로 가능한데 자신이 원하는 방법으로 하면 될 거 같다. 먼저 차이점을 확인해보자. 똑같은 repository를 보여주고 있지만 위에는 프로젝트 폴더를 처음에 보여주고 아래는 프로젝트 폴더 안을 처음에 보여준다. 처음에 연동하는 부분과 프로젝트를 가져올 때 차이는 있지만 나머지 부분은 크게 차이가 없으므로 자신이 원하는 것을 선택하면 될 것 같다. 둘다 공통적인 부분 Github의 계정 repository의 생성 및 git주소 필요 첫번째 두번째 공통 두번째로 진행하신 분들은 아래 화면은 뜨지 않을 것이다. 위와 같은 순서로 하면 크게 문제없이 진행이 될 거고 Github repos..
- Total
- Today
- Yesterday
- 정적스코프
- DI
- IntelliJ
- REST
- IDE
- Eclipse
- 동적스코프
- mysql.server
- homebrew
- MySQL
- SWAGGER
- Gradle
- SpringBoot
- 렉시컬스코프
- API
- Spring
- restful
- Java
- IOC
- {}
- STS
- 함수
- 중괄호
- import
- error
- JavaScript
- 컨테이너
- react
- Github
- fuction
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |