목록Javascript + Typescript (375)
치춘짱베리굿나이스
!밀비 급일 문제 당신은 길을 가다가 이상한 쪽지를 발견했다. 그 쪽지에는 암호가 적혀 있었는데, 똑똑한 당신은 암호가 뒤집으면 해독된다는 것을 발견했다. 이 암호를 해독하는 프로그램을 작성하시오. 입력 한 줄에 하나의 암호가 주어진다. 암호의 길이는 500을 넘지 않는다. 마지막 줄에는 "END"가 주어진다. (END는 해독하지 않는다.) 출력 각 암호가 해독된 것을 한 줄에 하나씩 출력한다. 풀이 const terces = () => { let arr = require("fs") .readFileSync("/dev/stdin") .toString() .trim() .split("\n"); const ans = []; for (let str of arr) { if (str === "END") break..
욱 제 문제 오늘은 운명의 라이벌 권욱과 권제가 숙명의 대결을 펼치는 날이다. 대결 종목은 바로 2019년 천하제일 코딩대회 본선 문제 중 하나인 "욱 제"를 더 빨리 푸는 것이다. 욱과 제는 "욱 제"를 빨리 푸는 능력, 일명 "욱제력"을 가지고 있다. 이 욱제력은 하나의 정수로 수치화할 수 있다. 욱의 욱제력이 A, 제의 욱제력이 B일 때, M을 (B−A) / 400 이라고 하자. 이때 욱이 제를 이길 확률은 1/(1 + (10 ^ M)) 이다. 이 값은 얼마일까? 입력 욱의 욱제력과 제의 욱제력이 한 줄에 주어진다. 욱제력은 0 이상 5,000 이하의 정수이다. 출력 욱이 제를 이길 확률을 출력한다. 정답과의 절대오차 또는 상대오차가 10-4 이하이면 정답으로 인정한다. 풀이 const wookje..
삼각형 외우기 문제 창영이는 삼각형의 종류를 잘 구분하지 못한다. 따라서 프로그램을 이용해 이를 외우려고 한다. 삼각형의 세 각을 입력받은 다음, 세 각의 크기가 모두 60이면, Equilateral 세 각의 합이 180이고, 두 각이 같은 경우에는 Isosceles 세 각의 합이 180이고, 같은 각이 없는 경우에는 Scalene 세 각의 합이 180이 아닌 경우에는 Error 를 출력하는 프로그램을 작성하시오. 입력 총 3개의 줄에 걸쳐 삼각형의 각의 크기가 주어진다. 모든 정수는 0보다 크고, 180보다 작다. 출력 문제의 설명에 따라 Equilateral, Isosceles, Scalene, Error 중 하나를 출력한다. 풀이 const triangle = () => { const [a, b, ..
평균 점수 문제 상현이가 가르치는 아이폰 앱 개발 수업의 수강생은 원섭, 세희, 상근, 숭, 강수이다. 어제 이 수업의 기말고사가 있었고, 상현이는 지금 학생들의 기말고사 시험지를 채점하고 있다. 기말고사 점수가 40점 이상인 학생들은 그 점수 그대로 자신의 성적이 된다. 하지만, 40점 미만인 학생들은 보충학습을 듣는 조건을 수락하면 40점을 받게 된다. 보충학습은 거부할 수 없기 때문에, 40점 미만인 학생들은 항상 40점을 받게 된다. 학생 5명의 점수가 주어졌을 때, 평균 점수를 구하는 프로그램을 작성하시오. 입력 입력은 총 5줄로 이루어져 있고, 원섭이의 점수, 세희의 점수, 상근이의 점수, 숭이의 점수, 강수의 점수가 순서대로 주어진다. 점수는 모두 0점 이상, 100점 이하인 5의 배수이다...
과목선택 문제 JOI는 물리, 화학, 생물, 지구과학, 역사, 지리 총 6 과목의 시험을 봤다. 각 시험의 만점은 100점이다. JOI는 물리, 화학, 생물, 지구과학 4과목 중에서 3 과목을 선택하고 역사, 지리 2 과목 중에서 한 과목을 선택한다. 시험 점수의 합이 가장 높게 나오도록 과목을 선택할 때, JOI가 선택한 과목의 시험 점수의 합을 구하시오. 입력 입력은 6행으로 되어있으며, 각 행에 1개의 정수가 주어진다. 1행에는 JOI의 물리 시험의 점수 A가 주어진다. 2행에는 JOI의 화학 시험의 점수 B가 주어진다. 3행에는 JOI의 생물 시험의 점수 C가 주어진다. 4행에는 JOI의 지구과학의 시험 점수 D가 주어진다. 5행에는 JOI의 역사 시험의 점수 E가 주어진다. 6행에는 JOI의 지..
Set 객체 특징 ES6에서 새로 도입한 자료구조이다 일반적인 배열과 비슷하게 원시 값, 객체 참조 모두 담을 수 있으며, 순회가 가능하다 다만 배열과 다른 점은, Set은 같은 값이 단 한 번만 나타날 수 있다 (중복 없음) 중복이 없는 유일한 값들의 집합이라고 생각하자 배열의 중복을 제거하고 싶을 때 잠깐 사용하거나, 처음부터 중복 없는 배열로 사용하고 싶을 때 쓰면 좋다 NaN과 undefined도 담을 수 있는데, Set에서 NaN은 여러 개 들어올 수 없다 (원래 NaN === NaN은 false이다) Set 객체에서 +0과 -0은 같은 값 취급된다 생성하기 const set = new Set(); // 빈 Set 객체 생성 console.log(set); // Set(0) {} const se..
함수형 프로그래밍 굳이 ‘자바스크립트에서의' 라는 문구를 넣은 것은… 예제 작성할 때 자바스크립트로 작성했기 때문이다 특별한 의미는 없다… 정의 객체지향과는 또 다른 프로그래밍 패러다임 ‘자료 처리를 수학적 함수의 계산으로 취급하고, 상태와 가변 데이터를 멀리하는 프로그래밍 패러다임’ …이라고 하는데 이 말만 봐서는 뭔 얘긴지 아리송하다 객체지향은 여러 종류의 객체들을 유기적으로 엮어 프로그램을 완성시키는 기법 함수형 프로그래밍은 기능을 작은 함수 단위로 쪼개고, 작은 함수의 연산 반환값을 이용하여 큰 함수를 만들고, 이 큰 함수들로 더 큰 함수에 필요한 연산을 계산하고… 쌓아올리는 방식으로 프로그램을 완성시키는 기법 쉽게 말해 프로그램을 이루는 작은 연산 하나하나를 만들 때에도 함수의 계산을 이용하는 ..
수학은 체육과목 입니다 2 문제 이 사진을 기억하는가? 이 사진은 오래전부터 인터넷에 돌아다니는 사진으로, 작년 전대프연 예선 A번에서는 수학을 정말 못 하는 고등학생인 성원이의 시험지로 소개되었다. 저작권이 있는 사진일 수 있어 알아보기 어렵게 가공했음을 양해 바란다. 예선 날짜가 다가오는데도 적당한 A번 문제를 생각하지 못한 출제진은 작년 전대프연 예선 A번을 응용해서 문제를 만들기로 했다. 이를 위해 사진 속 문제를 찾아본 출제진은 해당 문제가 2007학년도 6월 고등학교 1학년 전국연합학력평가 수리 영역 26번임을 알게 되었다. 시험지를 내려받고 문제들을 살펴보던 출제진은 아래와 같은 문제를 발견했다. 예상했겠지만, 여러분은 이제 위의 19번 문제 세 번째 줄에 등장하는 수 '1000..