본문 바로가기

분류 전체보기268

[baekjoon] 1697 숨바꼭질 (Javascript,C++) 1697번: 숨바꼭질 (acmicpc.net) 1697번: 숨바꼭질 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 접근 : BFS Javascript let input = require("fs") .readFileSync("input.txt") //"/dev/stdin" .toString() .split("\n") .map((val) => val.trim()); let dn = [1, -1, 2]; class Queue { constructor() { this.arr = []; this.head = 0.. 2022. 6. 29.
[baekjoon] 4179 불! (C++,Javascript) 4179번: 불! (acmicpc.net) 4179번: 불! 입력의 첫째 줄에는 공백으로 구분된 두 정수 R과 C가 주어진다. 단, 1 ≤ R, C ≤ 1000 이다. R은 미로 행의 개수, C는 열의 개수이다. 다음 입력으로 R줄동안 각각의 미로 행이 주어진다. 각각의 문 www.acmicpc.net 접근 : BFS 자바스크립트 시간초과를 극복하기 위해 큐를 구현하여 풀이 완료. Javascript let input = require("fs") .readFileSync("input.txt") //"/dev/stdin" .toString() .split("\n") .map((val) => val.trim()); let [n, m] = input .shift() .split(" ") .map((v) => .. 2022. 6. 29.
[baekjoon] 7576 토마토 (C++,Javascript) 7576번: 토마토 (acmicpc.net) 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 접근 : BFS Javascript는 시간초과 발생. 항상 백준에서는 queue shift를 직접 구현하지 않고 사용하면 시간초과가 많이 발생한다. 그런 경우를 위해 c++과 함께 준비하고 있다. Javascript /** * 제출용. 아래 로컬용을 지우고 제출하자. */ // let input = require("fs").readFileSync("/dev/stdin").toString().trim().. 2022. 6. 29.
[TIL] 2022.06.28 6월 28일 TIL 어제 부스트 캠프 1차 코딩 테스트를 보고 많이 심란해서 오늘은 공부를 많이 못했다. BFS에 대해서 다시한번 강의를 듣고 백준 문제를 풀면서 알고리즘을 이해했다. 처음 본 코딩테스트였고 아쉬운 점이 많다. 아직 결과는 나오지 않았지만, 한달간 열심히 코딩 테스트 준비하며 실력을 많이 키우고 자신감을 얻을 수 있었다. 이제 첫시작이고 앞으로 더 많은 공부와 시험을 봐야 한다. 내일부터는 다시 마음을 잡고 꾸준히 공부를 하겠다. 2022. 6. 28.