코딩 테스트/Baekjoon

문제 5597번: 과제 안 내신 분..? X대학 M교수님은 프로그래밍 수업을 맡고 있다. 교실엔 학생이 30명이 있는데, 학생 명부엔 각 학생별로 1번부터 30번까지 출석번호가 붙어 있다. 교수님이 내준 특별과제를 28명이 제출했는데, www.acmicpc.net 메모 요소들 간에 줄을 바꿀 때는 중간에 개행문자 "\n"을 더해준다. indexOf()으로 배열에서 빈 숫자를 찾아낸다. 정답 let fs = require("fs"); let filePath = process.platform === "linux" ? "/dev/stdin" : "test.txt"; let input = fs .readFileSync(filePath) .toString() .split("\n") .map(Number) .sor..
문제 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net 메모 배열을 Math.max() 메서드에 넣을 때는 spread syntax(...)를 쓴다. 각 과목의 변환 점수를 addition assignment(+=)를 통해 sum에 누적 할당한다. 정답 let fs = require("fs"); let filePath = process.platform === "linux" ? "/dev/stdin" : "test.txt"; let input = fs.readFileSync(filePath).toString..
문제 2562번: 최댓값 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어 www.acmicpc.net 메모 indexOf() 메서드를 활용해 배열에서 특정 요소의 순서를 구한다. 정답 let fs = require("fs"); let filePath = process.platform === "linux" ? "/dev/stdin" : "test.txt"; let input = fs.readFileSync(filePath).toString().split("\n").map(Number); let max = Math.max(.....
문제 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net 메모 Math.min()과 Math.max()를 사용한다. 배열을 함수의 매개변수에 넣을 때는 스프레드 연산자(...)를 쓴다. 정답 let fs = require("fs"); let filePath = process.platform === "linux" ? "/dev/stdin" : "test.txt"; let input = fs.readFileSync(filePath).toString().split("\n"); let ..
문제 10871번: X보다 작은 수 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. www.acmicpc.net 정답 let fs = require("fs"); let filePath = process.platform === "linux" ? "/dev/stdin" : "test.txt"; let input = fs.readFileSync(filePath).toString().split("\n"); let num = Number(input[0].split(" ")[1]); let arr = input[1] .split(" ") .map(Number) ...
문제 2480번: 주사위 세개 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개 www.acmicpc.net 메모 세 가지 이상의 변수를 비교할 때는 && 혹은 | | 같은 연산자를 사용한다. 정답 // test.txt 14 30 20 // test.js let fs = require("fs"); let filePath = process.platform === "linux" ? "/dev/stdin" : "test.txt"; let input = fs.readFileSync(filePath).toString().split(" ").map(Number..
문제 2525번: 오븐 시계 첫째 줄에 종료되는 시각의 시와 분을 공백을 사이에 두고 출력한다. (단, 시는 0부터 23까지의 정수, 분은 0부터 59까지의 정수이다. 디지털 시계는 23시 59분에서 1분이 지나면 0시 0분이 된다.) www.acmicpc.net 메모 시간을 분으로 환산한 뒤 계산한다. 더한 시간(hour)의 숫자가 24 이상이면 24를 뺀다. 정답 let fs = require("fs"); let filePath = process.platform === "linux" ? "/dev/stdin" : "test.txt"; let input = fs.readFileSync(filePath).toString().split("\n"); let time = input[0].split(" ").m..
문제 11022번: A+B - 8 각 테스트 케이스마다 "Case #x: A + B = C" 형식으로 출력한다. x는 테스트 케이스 번호이고 1부터 시작하며, C는 A+B이다. www.acmicpc.net 메모 11021번 문제와 거의 동일하다. 정답 // test.txt 5 1 1 2 3 3 4 9 8 5 2 // test.js let fs = require("fs"); // let input = fs.readFileSync("/dev/stdin").toString().split("\n"); // 제출용 let input = fs.readFileSync("test.txt").toString().split("\n"); // 테스트용 let lineNumber = Number(input[0]); // 총 ..
문제 11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 메모 for문를 활용한다. 두 값의 합계를 새로운 변수로 할당한다. 정답 // test.txt 5 1 1 2 3 3 4 9 8 5 2 // test.js let fs = require("fs"); let input = fs.readFileSync("/dev/stdin").toString().split("\n"); // 제출용 // let input = fs.readFileSync("test.txt").toString().split("\n"); // 테스트용 let lineNumber = Number(input[0]); // 총..
문제 25304번: 영수증 준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것 www.acmicpc.net 메모 for문를 활용한다. 개별 상품의 개수와 가격은 3번째 줄부터 있다. 주어진 데이터를 사용할 때 줄 바꿈(\n), 공백(" ")에 유의한다. 정답 // test.txt 260000 4 20000 5 30000 2 10000 6 5000 8 // test.js let fs = require("fs"); let input = fs.readFileSync("/dev/stdin").toString().split("\n"); // 제출 // let input = fs.r..
문제 2884번: 알람 시계 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, www.acmicpc.net 메모 중첩 조건문을 활용한다. 시와 분의 숫자가 음수가 되는 경우를 염두에 두고 중첩 조건문을 작성한다. 정답 // test.txt 0 30 // test.js let fs = require("fs"); let input = fs.readFileSync("/dev/stdin").toString().split(" ").map(Number); // 제출 // let input = fs.readFileSync("test.txt").toString().split(" ")...
카버
'코딩 테스트/Baekjoon' 카테고리의 글 목록 (3 Page)