일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 6593번
- 한윤정이 이탈리아에 가서 아이스크림을 사먹는데
- 5014번
- node.js
- 16439번
- 타입스크립트
- 16953번
- 20365번
- 정리
- 1541번
- 2503번
- 백준
- 17626번
- 5427번
- 20300번
- 123만들기
- 13913번
- 1969번
- 토마토
- 7526번
- javascript
- 타입스크립트 프로그래밍
- 14940번
- 알고리즘
- 1926번
- 풀이
- 2422번
- 나이트의이동
- 맥주마시면서걸어가기
- 자바스크립트
- Today
- Total
목록풀이 (29)
Sqsung DevLog

1. 문제 ㅡ 1927번: 최소 힙 (난이도: Silver II) 1927번: 최소 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 2. 풀이 ㅡ Node.js (자바스크립트) class MinimumHeap { constructor() { this.heap = [-Infinity]; } insert(value) { this.heap.push(value); this.bubbleUp(this.heap.length - 1); } bubbleUp(position) { let tmp = this.heap[posit..

1. 문제 ㅡ 1969번: DNA (난이도: Silver IV) 1969번: DNA DNA란 어떤 유전물질을 구성하는 분자이다. 이 DNA는 서로 다른 4가지의 뉴클레오티드로 이루어져 있다(Adenine, Thymine, Guanine, Cytosine). 우리는 어떤 DNA의 물질을 표현할 때, 이 DNA를 이루는 뉴클레오 www.acmicpc.net 2. 풀이 ㅡ Node.js (자바스크립트) const [info, ...input] = require('fs').readFileSync('/dev/stdin').toString().split('\n'); const [N, DNA_LENGTH] = info.split(' ').map(val => +val); const getDNA = () => { con..

1. 문제 ㅡ 7569번: 토마토 II (난이도: Gold V) 7569번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N과 쌓아올려지는 상자의 수를 나타내는 H가 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M ≤ 100, 2 ≤ N ≤ 100, www.acmicpc.net 앞서 풀었던 백준 7576번: 토마토 문제와 유사하지만 박스가 여러 개 존재한다. 좌우상하 칸은 물론 위아래 위치한 칸까지 확인해야 한다는 차이점이 있다. (아래 사진 참고) 2. 풀이 ㅡ Node.js (자바스크립트) class Queue { constructor() { this.q = []; this.head = 0; this.tail = 0; } push(item) { ..

1. 문제 ㅡ 7576번: 토마토 (난이도: Gold V) 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 2. 풀이 ㅡ Node.js (자바스크립트) class Queue { constructor() { this.q = []; this.head = 0; this.tail = 0; } push(item) { this.q[this.tail++] = item; } shift() { this.head++; } front() { return this.q[this.head]; } isEmpty() { ..

1. 문제 ㅡ 2164번: 카드 2 (난이도: Silver IV) 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net 2. 풀이 ㅡ Node.js (자바스크립트) const N = 6; /** * @LinkedList에 넣어줄 Node * 이번 문제에서는 각 카드가 Node로 저장된다 */ class Node { constructor(value) { this.value = value; this.next = null; this.prev = null; } } /** * 각 카드 정보를 저장해둘 LinkedList *..

1. 문제 ㅡ 13913번: 숨바꼭질 4 (난이도: Gold IV) 13913번: 숨바꼭질 4 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 2. 풀이 ㅡ Node.js (자바스크립트) const [subin, sister] = require('fs').readFileSync('/dev/stdin').toString().trim().split(' ').map(val => +val); const visited = Array.from({ length: 100001 }, () => false); const ..

1. 문제 ㅡ 1926번: 그림(난이도: Silver I) 1926번: 그림어떤 큰 도화지에 그림이 그려져 있을 때, 그 그림의 개수와, 그 그림 중 넓이가 가장 넓은 것의 넓이를 출력하여라. 단, 그림이라는 것은 1로 연결된 것을 한 그림이라고 정의하자. 가로나 세로www.acmicpc.net 2. 풀이 ㅡ Node.js (자바스크립트)const [info, ...input] = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n'); const [Y, X] = info.split(' ').map(val => +val); const board = input.map(row => [...row.split(' ').map(val => +..

1. 문제 ㅡ 5014번: 스타트링크 (난이도: Silver I) 5014번: 스타트링크 첫째 줄에 F, S, G, U, D가 주어진다. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) 건물은 1층부터 시작하고, 가장 높은 층은 F층이다. www.acmicpc.net 2. 풀이 ㅡ Node.js (자바스크립트) const [ buildingHeight, kangho, startlink, up, down ] = require('fs').readFileSync('/dev/stdin').toString().trim().split(' ').map(val => +val); const visited = Array.from({ length: buildingHeight }, () => ..

1. 문제 1697번: 숨바꼭질 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 2. 풀이 const [subin, sister] = require('fs').readFileSync('/dev/stdin').toString().trim().split(' ').map(val => +val); const visited = Array.from({ length: 100100 }, () => false); const bfsMoveSubin = N => { const queue = [[N, 0]]; visited[..