분류 전체보기
-
[구름에듀] 환상의 조합알고리즘 문제풀이/Python 2020. 2. 8. 21:32
문제 # -*- coding: utf-8 -*- # UTF-8 encoding when using korean ns = input() ability = input() number = ns.split(' ')[0] result = ns.split(' ')[1] # 합 arrAbility = ability.split(' ') cnt = 0 sum = int(arrAbility[0]) def choice(x, sum): global result global arrAbility if(x
-
[프로그래머스 Level 1] K번째 수(map, sort, sorted)알고리즘 문제풀이/Python 2020. 2. 6. 12:38
문제 배열 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 이하입니다. arra..
-
[디자인 패턴] 적응자 패턴, 빌더 패턴, 복합체 패턴Web/JavaScript 2020. 2. 5. 16:44
적응자 패턴 인자에 따라 구조가 변하는 패턴으로, 서로 다른 객체에 동일한 메서드를 만들고, 해당 객체를 생성자 객체의 인자로 넘겨 활용하는 패턴 다들 친구와 자신의 여자친구에게 인사하는 방식이 다를 것이다. 이를 코드로 구현해보자. var greetSystem = (function(){ var greetSystem = function(adapter){ this.adapter = adapter; } greetSystem.prototype.greeting = function(){ this.adapter.greeting(); } return greetSystem; })(); var friend = { greeting : function(){ console.log("ㅎㅇ"); } } var girlfriend..
-
20.02.05 운동일지일상/운동 2020. 2. 5. 14:08
오늘부터 5 X 5 스트렝스를 기르는 방식으로 운동방식을 바꾸었다. 스트렝스가 증가해야 더 큰 무게도 들 수 있기 때문이다. 내가 운동을 시작한 지는 꽤 되었지만, 기본 스트렝스가 약하다 보니 크게 중량도 못 치고, 근육량도 많이 증가가 안돼서 운동방식을 바꾸기로 결심했다. 오늘 스쿼트 - 50kg (충분히 할 만했다) 다음 55kg로 진행해도 OK 밀리터리 프레스 - 30kg (힘들었다. 아직 5kg 증량은 무리고, 6 X 5, 7 X 5로 늘려가자) 바벨 로우 - 30kg (충분히 할 만했다) 다음 35kg로 진행해도 OK, 자세를 좀 더 제대로 알아둘 필요가 있다. 목요일 계획 스쿼트 55kg 벤치프레스 30kg 데드리프트 40kg
-
[디자인 패턴] 플라이급 패턴, 퍼사드 패턴, 프록시 패턴Web/JavaScript 2020. 2. 4. 19:22
플라이급 패턴 객체의 다양한 속성(변수) 중 동일하게 가질 속성(변수)은 프로토타입으로 만들고, 각자 다르게 설정할 속성(변수)은 객체의 생성자 함수에 포함시킨다. var Person = (function(){ var Person = function(name){ // 객체마다 다르게 가질 속성 this.name = name; } // 객체마다 동일하게 가질 속성 Person.prototype.age = 24; Person.prototype.greet = function(){ console.log('hello, my name is ' + this.name); } return Person; })(); 퍼사드 패턴 퍼사드(facade)는 외관을 의미하는데, 이는 객체를 만들어 사용할 때, 복잡하고, 세부적인 ..
-
클로저Web/JavaScript 2020. 2. 2. 14:25
비공개 변수를 가질 수 있는 환경에 있는 함수를 클로저라고 부른다. 비공개 변수는 클로저 함수 내부에서 생성된 변수도 아니고, 매개변수도 아닌 변수를 의미하는데, 즉 클로저의 상위 컨텍스트에서 생성된 변수를 의미한다. 이를 구조화하면 다음처럼 된다. 함수() { 생성된 변수 // 비공개 변수 return 함수 or 함수를 담은 객체 } 위의 구조를 따르면서 예시를 만들어보자. var self = function (){ var name = "catnap"; var age = 24; var height = 176; var girlfriend = false; return { introduce: function(){ console.log("my name is " + name); console.log("my ag..