개발자 첫걸음/백준 40

백준 구현 - 농구 경기 [1159]

https://www.acmicpc.net/problem/1159 1159번: 농구 경기 상근이는 농구의 세계에서 점차 영향력을 넓혀가고 있다. 처음에 그는 농구 경기를 좋아하는 사람이었다. 농구에 대한 열정은 그를 막을 수 없었고, 결국 상근이는 농구장을 청소하는 일을 시작 www.acmicpc.net 1. 요약하면 입력은 줄 바꿈으로 들어오며 첫 입력을 숫자 그 다음 부터는 문자열을 받는다. 2. 각 문자열의 첫 글자를 따서 같은 문자가 5개 이상인 경우 오름차 순으로 나열하여 문자열로 출력한다. 3. 만약 5개 이상인 문자가 없다면 'PREDAJA'를 출력한다. (따옴표 없이) 나의 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24..

백준 수학 - 직사각형에서 탈출 [1085]

https://www.acmicpc.net/problem/1085 1085번: 직사각형에서 탈출 한수는 지금 (x, y)에 있다. 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0), 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램 www.acmicpc.net 나의 코드 1 2 3 4 5 6 7 8 9 const [x, y, w, h] = require("fs") .readFileSync(0) .toString() .trim() .split(" ") .map((i) => parseInt(i)); const answer = [x, y, w - x, h - y]; console.log(Math.min(...answer)); cs 1. 현..

백준 구현 - 저항 [1076]

https://www.acmicpc.net/problem/1076 1076번: 저항 첫째 줄에 첫 번째 색, 둘째 줄에 두 번째 색, 셋째 줄에 세 번째 색이 주어진다. 위의 표에 있는 색만 입력으로 주어진다. www.acmicpc.net 나의 코드 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 32 33 const [color1, color2, color3] = require("fs") .readFileSync(0) .toString() .trim() .split("\n"); const colors = [ "black", "brown", "red", "orange", "yellow", "green",..

백준 문자열 10 - 그룹 단어 체커 [1316]

https://www.acmicpc.net/problem/1316 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 나의 코드 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 const inpu..

백준 재귀2 - 피보나치 수 5 [10870]

https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 나의 풀이 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 const input = require("fs") .readFileSync(0) .toString() .trim() .split("\n"); const fibonacci = (num) => { if (num === 0 || num === 1) { return num; } return ..

백준 정렬 - 수 정렬하기 [2750]

https://www.acmicpc.net/problem/2750 2750번: 수 정렬하기 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 나의 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 const input = require("fs") .readFileSync(0) .toString() .trim() .split("\n"); input.shift(); input .sort((a, b) => a - b) .forEach(i => { console.log(i); }); cs 1. 단순 숫자 정렬 문제 2. sort 메서드로 오름..

백준 수학 - 주사위 [1233]

https://www.acmicpc.net/problem/1233 1233번: 주사위 지민이는 주사위 던지기 게임을 좋아하여 어느 날 옆에 있는 동호를 설득하여 주사위 던지기 게임을 하자고 하였다. 총 3개의 주사위가 있다. 그리고 이 주사위는 각각 S1(2 ≤ S1 ≤ 20), S2(2 ≤ S2 www.acmicpc.net 나의 답안 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 const [a, b, c] = require("fs") .readFileSync(0) .toString() .trim() .split(" "); const sums = new Array(81); sums.fill(0); for (let i = 1; i

백준 문자열 9 - 크로아티아 알파벳 [2941]

https://www.acmicpc.net/problem/2941 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net 문제 1. 입력 값으로 문자열이 주어진다. 2. 위의 크로아티아 알파벳에 일치하는 문자라면 단어 1개로 취급한다. 3. 문자열의 단어의 개수를 출력하라. 입출력 예시 나의 답안 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 32 33 34 35 36 37 3..