분류 전체보기
-
[백준 Node.js/Javascript] 2839번 설탕 배달To infinity/Coding Practice 2021. 7. 3. 12:19
2021.07.02 - 03 Problem 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net How to Solve? 문득, 이런 생각이 들었다. 내가 실제로 현업에서 일을하게되면 백준에서와 같이 내가 짠 코드가 정답인지 아닌지 걸러주지 않고 실제로 내가 여러 조건들을 넣어보면서 판별을 하게 될텐데 어떻게 그걸 판별할 수 있을까? 오류횟수를 최대한 줄어야 한다는 생각이 들었다. 이번 문제는 반은 풀고 반은 못 풀었다고 해도 될 것 같다. 일단, '나머지'라는 개념을 통해 해당 문제를 접근하면 되겠다는 아이디어는 얻었다. ..
-
[백준 Node.js/Javascript] 2775번 부녀회장이 될테야!To infinity/Coding Practice 2021. 7. 2. 00:00
코드 해당 코드는에서 여기 블로그를 참고하여 적은 것이다. let fs = require('fs'); let input = fs.readFileSync('/dev/stdin').toString()split('\n').map(el => +el); let T = input.shift(); for (let i = 0; i < T; i++) { let k = input.shift() // 두번째 케이스가 들어오기 위해 원본배열에서 제거해준다 let n = input.shift() // 어차피 첫번째 값이 제거되면 그 다음에 있는 요소가 첫번째가 된다. let residents = []; // 각 룸의 인원수를 만드는 배열 작업 (층별로 배열을 만듦, 층이 곧 인덱스) for ( let i = 0; i
-
[백준 Node.js/Javascript] 2869번 달팽이는 올라가고 싶다.To infinity/Coding Practice 2021. 6. 29. 22:33
2021.06.29 Question 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B +el); let climb = input[0]; let slipped = input[1]; let height = input[2]; let day = Math.ceil(( height - slipped) / ( climb - slipped)); console.log(day) How to s..
-
[백준 Node.js/Javascript] 1193번 분수찾기To infinity/Coding Practice 2021. 6. 29. 19:50
2021.06.29 Question 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net Answer code let fs = require('fs'); let N = fs.readFileSync('/dev/stdin').toString().map(el=>+el) let line = 0; let maxValue = 0; //N의 범위의 최대값이 나올 때 까지 while ( maxValue < N) { line++ maxValue += line; } let idx = N - (maxValue - line); if (line % 2 == 0) { child = idx; parents = (line + 1) - child; } else { child ..
-
[백준 Node.js/Javascript] 2292번 벌집To infinity/Coding Practice 2021. 6. 28. 20:53
2021.06.28 Question 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net Answer code let fs = require('fs'); let input = fs.readFileSync('/dev/stdin').toString() let room = 1; let range = 1; let i = 0 //input의 범위를 설정해줌. while (true){ if((range + (6 * i)) = ..
-
[백준 Node.js/Javascript] 1152번 단어의 개수To infinity/Coding Practice 2021. 6. 27. 22:28
2021.06.27 Question 1152번: 단어의 개수 첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 www.acmicpc.net Answer code let input = ` `.toString().trim().split(' '); let count = 0 for (let i = 0; i < input.length; i++) { if(input[i]) count++ } console.log(count) How to solve? 쉽게봤다가 큰코다쳤다.ㅋㅋ let input = ` `.toString().trim().split(' '); console...
-
[백준 Node.js/Javascript] 2941번 크로아티아 알파벳To infinity/Coding Practice 2021. 6. 27. 20:23
2021.06.27 Question 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net Answer code let fs = require('fs'); let input = fs.readFileSync('/dev/stdin').toString().trim(); //길이를 셀 때 공백이 있는지 해당 공백도 세져서 처음부터 없애버렸다. let regExp = /c\=|c\-|dz\=|d\-|lj|nj|s\=|z\=/g;; let result = input.replace(regEx..
-
[Javascript 활용] String.prototype.indexOfTo infinity/Javascript 활용 2021. 6. 27. 14:53
메서드를 호출한 문자열에서 인수로 전달받은 문자열을 검색해서 첫번째 인덱스를 반환 값이 없으면 -1을 반환 => 즉, 반환하는 값은 '인덱스'임 (이름 자체가 index잖아) 작성법 메서드를 호출한 문자열.indexOf(~에서 검색할 문자열) 대상.indexOf(찾을문자) To infinty and beyond라는 문자열에 a가 들어가나? 가 궁금하다면 해당 메서드 사용 -> a가 중복해서 있다면 가장 먼저 등장하는 a의 인덱스를 반환. -> 만약 a가 없다면 -1을 반환