일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코딩
- db
- 직접연결하면안되는이유
- 오토마타정의
- Backend
- 코딩감수성
- LIS
- AWS
- DB관계
- 우테캠4기
- 14502
- 수업내용정리
- 궁금증
- Sequelize
- 문제
- JS
- 코딩일기
- 알고리즘
- Beakjoon
- 오토마타
- 가장긴증가하는부분수열
- EC2
- 프로그래밍
- 백준
- 14002
- BOJ
- 16918
- nuxt
- 프론트엔드
- 우아한테크캠프
- Today
- Total
목록분류 전체보기 (25)
모든 경험을 소중하게
이번 포스트에서 다뤄볼 문제는 Beakjoon online judge 사이트에 있는 14502번 문제 연구소 이다. 우선 시간 제한이 2초이므로, 그렇게 빡빡하지는 않다고 생각할 수 있었다. 문제를 마저 더 읽어보자. 새로 세울 수 있는 벽은 꼭 3개이다. 벽이 세워질 수 있는 곳은 0 값을 가지고 있는 좌표들뿐이다. 그렇다면, 어떻게 3개를 선택해야 가장 많은 0 을 남길 수 있을까? 문제를 마저 더 읽어보자. 우선, 벽을 세운 후, 2인 점들을 queue 에 넣은 후, BFS 를 돌아야 안전 영역 ( 0 ) 의 크기가 몇일지 알 수 있는 것 같다. 따라서, 모든 벽 3개를 다 세워봐야만 안전 영역의 크기를 알 수 있다고 판단이 든다. 그렇다면, 0 을 가진 좌표 중 3개를 선택해야 하므로, 0의 갯수..
이번 포스트에서 다뤄볼 문제는 Beakjoon online judge 사이트에 있는 13335번 문제 트럭을 풀어볼 예정이다. 밑에 글을 읽기에 앞서, 문제를 풀 때, 트럭 대신 버스라는 변수를 사용했다. 밑의 설명 또한 그렇게 진행하고자 한다. 오해 없길 바랍니다. 문제 레벨과 대충 훑어본 느낌으로는 매우 쉬운 문제였다. 문제를 보자마자 생각난 방법은 하나 있다. 1. 버스 라는 구조체를 만든다. 2. 그 구조체에서 다리를 구간별로 나눠서, 현재 버스가 다리 위에 어느 위치인지 기억하는 변수를 저장한다. 하지만, 이렇게 한다면, 매 초마다 각 버스의 위치를 1씩 증가 시켜줘야 한다. 즉, 시간 복잡도 면에서 n^2 이므로, 비효율적이다. 다른 방법을 생각해야만 했다. 우선, 아래의 입력과 출력 예제를 ..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
오늘 풀어본 문제는 Beakjoon online judge 사이트에 있는 16918번 문제 봄버맨을 풀어보았다. 일단 손으로 직접 테스트 케이스를 가지고 진행해보았다. 주어진 테스트 케이스는 다음과 같다. 6 7 3 . . . . . . . . . . O . . . . . . . O . . . . . . . . . O O . . . . . O O . . . . . 앞으로는 ' . ' 을 쓰면 보기 어려워서 'X' 를 쓰도록 하겠다. time(N) 1 2 3 4 5 map[][] XXXXXXX XXXOXXX XXXXOXX XXXXXXX OOXXXXX OOXXXXX OOOOOOO OOOOOOO OOOOOOO OOOOOOO OOOOOOO OOOOOOO OOOXOOO OOXXXOO OOOXXXO XXOOXOO ..
대부분의 어플, 웹사이트는 같은 방식으로 통신하고 있다. 만약 서버의 역할이 거의 없다면, 서버를 제외하여 프론트와 DB를 직접 연결하면 안되는 걸까? 우선, 프론트와 DB 를 직접 연결하는게 가능할까? 👉🏻정답은 가능하다. 하지만, 주변에서 개발한다는 사람들과 많은 프로젝트 코드를 봤을 때, 클라이언트와 DB를 직접 연결하는 경우를 보지 못했다. 왜 그럴까? 서버의 역할이 없다면 그렇게 하면 안되는 것일까? 그 이유는 다음과 같다. 1. 클라이언트의 코드는 난독화등 보안을 위해 몇가지 처리가 되지만, 소스 코드를 볼 수 있다. 따라서 DB 와 통신하기 위해 필요한 DB username, id, pw 등의 정보가 필요한데, 이러한 중요한 정보가 외부로 노출될 수 있기 때문이다. 2. 클라이언트와 DB가 ..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
일반 문법 for(let i = 0; i < n; i++) for( value of array or string) for( index in array or string) switch(value) { case 1: case 2: statment; break; case 3: default: } Array method arr.pop() // 배열 뒷부분 값을 삭제 후 반환 * 빈 배열일시 undefined 반환기존배열변경 arr.push(value); 배열의 끝에 하나이사의 요소를 추가하고, 배열의 길이를 반환기존배열변경 arr.unshift(value); // 배열 앞부분에 값을 삽입, 배열의 길이를 반환기존배열변경 arr.shift(); //배열 앞부분의 값을 삭제 * 빈 배열일시 undefined..