백준 알고리즘1, 2, 3 더하기 (9095번)시간 제한메모리 제한제출정답맞은 사람정답 비율1 초128 MB26598169121156362.224%문제정수 4를 1, 2, 3의 합으로 나타내는 방법은 총 7가지가 있다. 합을 나타낼 때는 수를 1개 이상 사용해야 한다.1+1+1+11+1+21+2+12+1+12+21+33+1정수 n이 주어졌을 때, n을 1, 2, 3의 합으로 나타내는 방법의 수를 구하는 프로그램을 작성하시오. 해당 문제를 풀기 위해서 1, 2, 3 으로 각각 더했을때의 다음 경우를 탐색해나가며, 최종적으로 원하는 값이 출력되었을때 연산 결과를 +1 해주는 방식으로 풀 수 있다. +1, +2, +3의 각각의 경우에 대해서 모두 재귀함수를 호출시키고 타겟값을 넘을경우에는 함수를 종료시켜주고,..
1. 메이븐이란?주로 java 진영에서 프로젝트 빌드, 관리에 사용되는 도구이다. 개발자들이 전체 개발과정을 한 눈에 알아볼 수 있다. 아파치 프로젝트이다.maven의 특징빌드 절차 간소화동일한 빌드 시스템 제공프로젝트 정보 제공구조 ant와의 차이점Ant가 비교적 자유도가 높다. 전처리, 컴파일, 패키징, 테스팅, 배포 가능Maven은 정해진 라이프사이클에 의하여 작업 수행하며, 전반적인 프로젝트 관리 기능까지 포함하고 있음. (Build Tool + Project Management)gradle과의 차이점XML 대신 groovy 스크립트를 사용하여 동적인 빌드 가능.maven은 멀티프로젝트에서 상속구조인데, gradle은 주입 방식이다. 멀티프로젝트에서 gradle이 더 적합하다.2. 플러그인메이븐은..
Bash shellBash 는 Bourne Again Shell의 축약어이다. 이것은 원래의 본쉘과 호환이 가능하며 명령 라인 편집과 같은 몇 가지 점에서 기능이 향상되었다. 또한 Bash쉘은 리눅스 쉘이며 리눅스에서 가장 널리 사용되는 쉘이다.설정 파일들bash는 다섯개의 공통된 설정 파일들을 가지고 있다. 모든 리눅스 배포본에 존재하지는 않지만 이 파일들을 만드는 것은 어렵지 않다./etc/profile/etc/bashrc~/.bash_profile~/.bashrc~/.bash_logout이 파일들은 전역적인 것과 지역적인 것의 두 개 그룹으로 나누어질 수 있다. bash를 사용하는 모든 사용자에게 영향을 주는 설정 내용을 담고 있는 파일들은 전역적이다. 일반적으로 전역적인 파일은 /etc 디렉토리에..
Javascript 기초 - 1배열lengthvar arr = [1,2,3,4]; arr.length; // 4배열 길이를 알려줌joinvar arr = [1,2,3]; arr.join(); // "1,2,3" (default) arr.join(':'); // "1:2:3"concatvar arr = [1,2,3]; arr = arr.concat(4,5); // [1,2,3,4,5] arr.concat([6,7]); // [1,2,3,4,5,6,7]reversevar arr = [1,2,3,4]; arr.reverse(); // [4,3,2,1]push, popvar arr = [1,2,3]; arr.push(4); // 4 arr; // [1,2,3,4] arr.pop(); // 4unshift, sh..
public to private repository 복사Github UIprivate-repo 를 통해 새로운 Repo를 생성하십시오 . 이후git clone --bare https://github.com/exampleuser/public-repo.git cd public-repo.git git push --mirror https://github.com/yourname/private-repo.git cd .. rm -rf public-repo.git명령어 입력개인 repo를 복제하여 작업 할 수 있습니다.git clone https://github.com/yourname/private-repo.git cd private-repo make some changes git commit git push orig..
Application.javaSpringboot project 생성시 작성되어 있는 파일로써, @SpringBootApplication 이라는 핵심 어노테이션을 통해 동작한다. java project의 main문과 같은 역할로 이해하자.@SpringBootAPplication 은 @Configuration + @EnableAutoConfiguration + @ComponentScan 세가지를 한번에 묶어놓았다. @ Configuration@ Configuration은 클래스를 애플리케이션 컨텍스트에 대한 빈 정의의 소스로 태그 지정한다. @EnableAutoConfiguration@EnableAutoConfiguration은 스프링 부트를 사용하여 classpath설정, 다른 빈 및 다양한 속성 설정에 ..
[JAVA] JVM 구조 이해하기JVM이란?JVM이란 추상적인 컴퓨팅 머신으로써 3가지 중요 개념이 있다.명세(스펙)구현인스턴스JVM 다이어그램 다이어 그램상으로 위에서 아래로 내려가는 과정을 수행한다. class 파일의 정보를 Class Loader를 사용해 JVM memory 공간으로 옮기고 이것을 Excution Engine으로 실행하는 구조이다.Class Loader클래스로더는 클래스파일 포맷(.class)을 준수하는 어떠한 것이랃도 인지하고 적재할 수 있도록 구현된다. 그리고 런타임시에 클래스를 적재하고 바른 바이트코드로 작성되었는지 검사한다.일반적으로 클래스로더는 두 종류로 나뉘는데 하나는 boostrap class loader 다른 하나는 user define class loader 이다.모..
JPA Criteria & SpecificationCriteria API는 JPA 2.0에 추가되었고, 다음과 같은 구문을 지원한다. (UPDATE 및 DELETE 기능은 JPA 2.1부터 지원한다.)SELECTFROMWHEREGROUP BYORDER BY JPA Criteria 는 동적쿼리를 사용하기위한 JPA 라이브러리이다. 기본적으로 JPQL(JPA Query Language)과 같이 엔티티 조회를 기본으로하며, 컴파일 시점에서 에러를 확인할수 있는 특징을 가진다. 예를들면 다음과 같다.TypedQuery query = em.createQuery("SELECT o FROM Order", Order.class); List resultList = query.getResultList();위 예제에서는 컴..