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

1. 문제 ㅡ 10026번: 적록색약 (난이도: Gold V) 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 2. 풀이 ㅡ Node.js (자바스크립트) const [N, ...drawing] = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n'); const dirs = [[0, 1], [0, -1], [1, 0], [-1, 0]]; const getCounts = (colorblind = false) => { const ch..

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. 문제 ㅡ 14940번: 쉬운 최단거리 (난이도: Silver I) 14940번: 쉬운 최단거리 지도의 크기 n과 m이 주어진다. n은 세로의 크기, m은 가로의 크기다.(2 ≤ n ≤ 1000, 2 ≤ m ≤ 1000) 다음 n개의 줄에 m개의 숫자가 주어진다. 0은 갈 수 없는 땅이고 1은 갈 수 있는 땅, 2는 목표지점이 www.acmicpc.net 2. 풀이 ㅡ Node.js (자바스크립트) const getDistances = () => { const [info, ...input] = require('fs').readFileSync('dev/stdin').toString().trim().split('\n'); const [Y, X] = info.split(' ').map(val => +val..

1. 문제 ㅡ 9375번: 패션왕 신해빈 (난이도: Silver III) 9375번: 패션왕 신해빈 첫 번째 테스트 케이스는 headgear에 해당하는 의상이 hat, turban이며 eyewear에 해당하는 의상이 sunglasses이므로 (hat), (turban), (sunglasses), (hat,sunglasses), (turban,sunglasses)로 총 5가지 이다. www.acmicpc.net 2. 풀이 ㅡ Node.js (자바스크립트) const [, ...input] = require('fs').readFileSync('dev/stdin').toString().trim().split('\n'); const tcs = []; while (input.length) { const tc = ..

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. 문제 ㅡ 6593번: 상범 빌딩 (난이도: Gold V) 6593번: 상범 빌딩당신은 상범 빌딩에 갇히고 말았다. 여기서 탈출하는 가장 빠른 길은 무엇일까? 상범 빌딩은 각 변의 길이가 1인 정육면체(단위 정육면체)로 이루어져있다. 각 정육면체는 금으로 이루어져 있어 www.acmicpc.net2. 풀이 ㅡ Node.js (자바스크립트)const input = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n').map(row => row.trim()); const testCases = (() => { const testCases = []; while (input.length) { const [Z, Y, X] = input.s..

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 ..