목록전체 글 (265)
SW
0. 제목 백준 1759 암호 만들기 BOJ 1759 암호 만들기 C++ 1759 암호 만들기 1. 문제 https://www.acmicpc.net/problem/1759 2. 풀이 브루트포스를 이용하여 푸는 문제이다. 모음과 자음을 따로 입력받고 벡터에 각각 저장한다. visited는 map으로 설정하였고 해당 string에 방문한적이 있으면 true, 없으면 false를 저장한다. 최소 한개의 모음과 최소 두개의 자음이 포함되어야 하므로 그 조건에 맞고 길이가 길이조건인 L과 같다면 해당 문자열을 사전순으로 정렬하고 visited.count(s)가 false이면 즉, 방문한적이 없으면 result에 push 해주고 return 한다. 만약, 요구하는 길이인 L과 길이가 같지만 자음, 모음 조건을 만족..
0. Hooks - Hooks 는 리액트 v16.8 에 새로 도입된 기능으로서, 함수형 컴포넌트에서도 상태 관리를 할 수 있는 useState, 그리고 렌더링 직후 작업을 설정하는 useEffect 등의 기능등을 제공하여 기존의 함수형 컴포넌트에서 할 수 없었던 다양한 작업을 할 수 있게 해준다. functional component에서 state를 가질 수 있게 해준다. 앱을 리액트 훅으로 만든다면, class component, componentdidmount, render 이런것들을 안해도 되고 모든것은 하나의 function이 되는 것이다. 이제 functional programming style이 되는 것이다. - 몇가지 Hooks를 알아보겠다. useTitle : react document 의..
0. 제목 백준 1525 퍼즐 BOJ 1525 퍼즐 C++ 1525 퍼즐 1. 문제 https://www.acmicpc.net/problem/1525 2. 풀이 이 문제는 브루트포스와 BFS를 사용하는 문제였다. 아홉개의 칸 순서대로 이어지는 숫자로 표현할 것이기 때문에 0을 9로 바꿔주고 시작한다. 정수를 입력받으면서 start라는 변수에 9자리 수를 저장한다. key, value쌍을 가지고 있는 map을 사용하여 dist를 선언한다. dist[x]는 x까지 움직인 횟수를 뜻한다. BFS를 사용하기 위해 큐를 선언하고 큐가 빌때까지 반복한다. 큐의 맨 앞에 있는 정수를 문자열로 만들어준다. 그 후 pop을 하고 9가 저장되어 있는 인덱스를 찾는다. 찾은 인덱스를 이용하여 x좌표와 y좌표를 찾는다. 미로..
0. RDBMS 관계형 DBMS는 열이 속성을 나타내고 테이블의 각 행이 레코드를 나타내는 테이블 형식으로 데이터를 저장한다. RDBMS는 CRUD(Create, Read, Update, Delete) 조작을 허용한다. SQL(Structured Query Language)은 관계형 데이터베이스 관리 시스템(RDMS)에서 데이터를 쿼리, 업데이트 및 삭제하는 데 사용되는 언어이다. SQL은 표준 쿼리 언어이다. SQL언어의 쿼리는 SQL명령 또는 SQL문이라고도 한다. 가장 인기있는 10가지 DBMS는 다음과 같다.(현재 2020.03.19) 출처: https://db-engines.com/en/ranking 가장 인기있는 10가지 RDBMS는 다음과 같다. 1. 각 RDBMS 특성 Oracle Orac..
0. 제목 백준 1697 숨바꼭질 BOJ 1697 숨바꼭질 C++ 1697 숨바꼭질 1. 문제 https://www.acmicpc.net/problem/1697 2. 풀이 완전탐색을 푸는데에 5가지 방법이 있다. brute force(N중 for문) 순열 BFS(최소를 구하는 문제) 비트마스크 백트래킹 이 문제는 BFS를 사용하여 푼다. 현재위치와 현재까지 걸린 시간을 큐에 넣고 조건을 확인해가며 push, pop을 반복한다. 그렇게 반복문을 돌다가 현재위치가 동생이 있는 위치와 같아지게 되면 bfs함수는 현재까지 걸린시간을 반환한다. 3. 코드 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 32 33..
0. 제목 백준 10819 차이를 최대로 BOJ 10819 차이를 최대로 C++ 10819 차이를 최대로 1. 문제 https://www.acmicpc.net/problem/10819 2. 풀이 next_permutation 이라는 STL 함수를 사용하면 된다. next_permutation은 순열의 순서를 바꿔주고 순열이 최종적으로 끝나면(완전하게 역순이 되면) 다시 원래 순서대로 바꾼 뒤 false를 반환해준다. 예를 들어, 1 2 3 4 -> 1 2 4 3 -> 1 3 2 4 -> 1 3 4 2 -> ... -> 4 3 2 1 -> (false반환)1 2 3 4 그리고 처음에 무조건 실행을 하는 do~while문을 사용하였다. 3. 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1..
0. 플러그인 compile, test, package, jsr, war 위와 같은 구성단계이외에도 많은 단계가 있는데 모든단계가 무조건 실행되는 것이 아니고 원하는 곳까지 실행할 수 있다. 각 단계별로 Plug-in을 가지고 있다. 단계를 수행하는 실질적인 프로그램이다. pom.xml에서 설정이 가능하다. Plug-in은 goal을 가지고 있다. 위와 같은 명령어를 실행하면 단계별 실행을 담당하는 플러그인들을 볼 수 있다.
0. 자바 프로젝트 생성하기 출처 : https://www.youtube.com/watch?v=oPEY7xawQlg&list=PLq8wAnVUcTFWRRi_JWLArMND_PnZM6Yja&index=3 위 영상을 참고하여 Maven Project를 생성하였다. 다음과 같이 javaprj 가 생긴것을 볼 수 있다. 1. Maven 프로젝트 컴파일과 실행 항상 Maven프로젝트에는 root에 pom.xml 파일이 있다. 프로젝트를 컴파일할 때나 실행할 때 pom.xml이 있는 파일에서 명령어를 실행한다. pom.xml에 아래 빨간 부분을 추가해야 Build가 Success 된다. BUILD SUCCESS 후에 /Users/kosangwon/mavenProject/javaprj/target/classes/co..
0. Maven이란? Maven은 Build Tool 이다. 빌드 과정 : 프로젝트 설정 -> 라이브러리 설정 -> 코드 작업 -> 컴파일 -> 테스트 -> 패키지 만들기 -> 배포 -> 레포팅 위 빌드 과정 중 반복되는 내용을 조금 더 효율적으로 개발할 수 있도록 도와주는 빌드 도구이다. 그렇다면 이클립스도 빌드 툴일까? 이클립스에서도 프로젝트 설정 -> 라이브러리 설정 -> 코드 작업 -> 컴파일 등이 가능한데 빌드 툴일까? 아니다. Visual Studio도 그렇고 Build Tool이 아니다. 이클립스나 Visual Studio는 IDE(Integrated Development Environment)이다. 빌드 툴은 프로젝트 생성, 라이브러리 생성등을 담당한다면 IDE는 더 많은 도구들을 결합해서..
1. Eclipse Eclipse는 IDE(Integrated Development Environment)이다. Eclipse에서도 프로젝트 설정 -> 라이브러리 설정 -> 코드 작업 -> 컴파일이 가능해서 Maven같은 Build Tool이라고 생각할 수 있지만 그렇지 않다. Build Tool은 프로젝트 생성, 라이브러리 생성 등을 담당한다면 IDE는 더 많은 도구들을 결합해서 만든 더 큰 단위의 도구이다. 2. Maven Maven은 Build Tool의 한 종류이다. Eclipse같은 IDE와는 다르다. Build과정은 프로젝트 설정 -> 라이브러리 설정 -> 코드 작업 -> 컴파일 -> 테스트 -> 패키지 만들기 -> 배포 -> 레포팅 과 같이 이루어져있다. Maven은 위 빌드 과정 중 반복되..