백준 58

<백준(node.js)> 2869번: 달팽이는 올라가고 싶다

🤖 문제 https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 풀이 const filePath = process.platform === "linux" ? "/dev/stdin" : "../input.txt"; const INPUT_ARR = require("fs") .readFileSync(filePath) .toString() .trim() .split(" "); const A = +INPUT_ARR[0]; const B = +INPUT_ARR[1]; const V = +INPUT_ARR[2]; conso..

유물/└ 백준 2022.02.16

<백준(node.js)> 1193번: 분수찾기

🤖 문제 https://www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net 풀이 const filePath = process.platform === "linux" ? "/dev/stdin" : "../input.txt"; const ORDER_NUMBER = +require("fs").readFileSync(filePath).toString().trim(); function findFraction(number) { let numerator; let denominator; let total = 1; let sum; for (let i = 1; ; i++) { if (total >= number)..

유물/└ 백준 2022.02.15

<백준(node.js)> 2292번: 벌집

🤖 문제 https://www.acmicpc.net/problem/2292 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 풀이 const fs = require("fs"); const INPUT_NUMBER = +fs.readFileSync("/dev/stdin").toString().trim(); function countRoomNum(num) { let maxNum = 1; for (let i = 0; ; i++) { maxNum += 6 * i; if (maxNum >= num) { return i + 1; }..

유물/└ 백준 2022.02.11

<백준(node.js)> 1712번: 손익분기점

🤖 문제 https://www.acmicpc.net/problem/1712 1712번: 손익분기점 월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 www.acmicpc.net 풀이 const fs = require("fs"); const INPUT_ARRAY = fs.readFileSync("/dev/stdin").toString().trim().split(" "); const FIXED_COST = +INPUT_ARRAY[0]; const COST_PER_UNIT = +INPUT_ARRAY[1]; const REVENUE_PER_UNIT = +INPUT_ARRAY..

유물/└ 백준 2022.02.09

<백준(node.js)> 1316번: 그룹 단어 체커

🤖 문제 https://www.acmicpc.net/problem/1316 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 풀이 const fs = require("fs"); const INPUT_ARRAY = fs.readFileSync("/dev/stdin").toString().trim().split("\n"); const wordArray = INPUT_ARRAY.splice(1); function pressWord(word) { const wordArr = word.s..

유물/└ 백준 2022.02.07

<백준(node.js)> 2941번: 크로아티아 알파벳

🤖 문제 https://www.acmicpc.net/problem/2941 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net 풀이 const fs = require("fs"); const Croatia = fs.readFileSync("/dev/stdin").toString().trim(); const regExp = /c=|c-|d-|s=|z=|dz=|lj|nj/g; function countCroatia(string) { const croatiaArray = string..

유물/└ 백준 2022.02.07

<백준> 5622번: 다이얼

🤖 문제 https://www.acmicpc.net/problem/5622 5622번: 다이얼 첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다. www.acmicpc.net 풀이 const fs = require("fs"); const WORD = fs.readFileSync("/dev/stdin").toString().trim(); function charToNum(char) { switch (char) { case "A": case "B": case "C": return 2; case "D": case "E": case "F": return 3; case "G": case "H": case "I": return 4; case "J": ca..

유물/└ 백준 2022.02.05

<백준> 2908번: 상수

🤖 문제 https://www.acmicpc.net/problem/2908 2908번: 상수 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 www.acmicpc.net 풀이 const fs = require("fs"); const questionNum = fs.readFileSync("/dev/stdin").toString().trim(); const qNumArr = questionNum.split(" "); function reverseNum(number) { const hundredsNum = Math.floor(number / 100); const tensN..

유물/└ 백준 2022.02.04

<백준> 1152번: 단어의 개수

🤖 문제 https://www.acmicpc.net/problem/1152 1152번: 단어의 개수 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열 www.acmicpc.net 풀이 const fs = require("fs"); const string = fs.readFileSync("/dev/stdin").toString().trim(); const vocaArray = string.split(" "); const result = vocaArray[0] === "" ? 0 : vocaArray.length; console.log(result); 1. (l..

유물/└ 백준 2022.02.03

<백준> 1157번: 단어 공부 (런타임 에러 (SyntaxError))

👾 문제 https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 풀이(오답) import fs from "fs"; const charList = fs.readFileSync("/dev/stdin").toString().trim(); const upperCharList = charList.toUpperCase().split(""); let countList = []; for (let i = 65; i { char === alphabet ? (count += 1) : null; }); c..

유물/└ 백준 2022.01.22