- 음양 더하기
어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요.
function solution(absolutes, signs) {
let answer = 0;
for (let i = 0; i <signs.length; i++) {
if(signs[i] === true) {
answer += absolutes[i];
} else {
answer += -absolutes[i];
}
}
return answer;
}
- 두 정수 사이의 합 (Math.max, Math,min 활용하여 다시 풀어봄)
두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요.
예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.
function solution(a, b) {
let sum = 0;
let max = Math.max(a, b);
let min = Math.min(a, b);
for (let i = min; i <= max; i++) {
sum += i;
}
return sum;
}
console.log(solution(5, 3));
- 직사각형 별찍기
이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다.
별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요.
process.stdin.setEncoding("utf8");
process.stdin.on("data", (data) => {
const n = data.split(" ");
const a = Number(n[0]),
b = Number(n[1]);
let star = "*".repeat(a);
for (let i = 0; i < b; i++) {
console.log(star);
}
});
- x만큼 간격이 있는 n개의 숫자
함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요.
function solution(x, n) {
let answer = [];
let a = 0;
for(let i = 0; i < n; i++) {
answer.push( a += x);
}
return answer;
}
- 부족한 금액 계산하기
새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이용료가 100이었다면 2번째에는 200, 3번째에는 300으로 요금이 인상됩니다.
놀이기구를 count번 타게 되면 현재 자신이 가지고 있는 금액에서 얼마가 모자라는지를 return 하도록 solution 함수를 완성하세요.
단, 금액이 부족하지 않으면 0을 return 하세요.
function solution(price, money, count) {
let answer = 0;
for (let i = 1; i<=count; i++ ) {
answer += price*i
}
if (answer > money) {
return answer - money;
} else {
return 0;
}
}
- 문자열 내 p와 y의 개수
대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다.
예를 들어 s가 "pPoooyY"면 true를 return하고 "Pyy"라면 false를 return합니다.
function solution(s){
let str = s.toLowerCase();
let countP = 0;
let countY = 0;
for (let i = 0; i < str.length; i++) {
if( str[i] == "p") {
countP++;
} else if (str[i] =="y") {
countY++;
}
}
return countP==countY;
}
function solution2(s) {
return s.toLowerCase().split('p').length
== s.toLowerCase().split('y').length;
}
console.log(solution2("pPoooyY"));
- 서울에서 김서방 찾기
String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.
function solution(seoul) {
let a = seoul.indexOf("Kim");
return `김서방은 ${a}에 있다`
}