본문 바로가기

Java Script/알고리즘 풀이

[알고리즘] 0821

문제 - Codewars_String repeat (8kyu)

Write a function that accepts an integer n and a string s as parameters,
and returns a string of s repeated exactly n times.
* Examples (input -> output)
6, "I" -> "IIIIII"
5,"Hello" -> "HelloHelloHelloHelloHello"

문제 풀이

function repeatStr (n, s) {
  let result = s.repeat(n);
  return result;
}
  1. repeat 메소드를 이용해서 s라는 스트링을 n회 반복하는 함수 작성

코드 비교

repeatStr = (n, s) => s.repeat(n)
  1. 화살표 함수를 이용해서 function을 생략하고 간단하게 작성한 코드

문제 - Codewars_Square(n) Sum (8kyu)

Complete the square sum function so that it squares each number passed into it and then sums the results together.

문제 풀이

function squareSum(numbers) {
  let sum = 0;
  let squareNum = 0;
  for(let i = 0; i < numbers.length; i++) {
    squareNum = Math.pow(numbers[i],2);
    sum += squareNum;
 }
return sum;
}
  1. 총 합계와 제곱 수를 담을 sum과 sqaureNum이라는 변수 선언
  2. i라는 변수를 만들어 0으로 선언하고, 만약 i의 수가 배열의 수보다 작을 시, i를 제곱하고 더하라는 for 구문 작성
  3. sum을 반환하는 코드 작성

코드 비교

function squareSum(numbers){
  return numbers.reduce((sum,num) => sum + (num * num), 0);
}
function squareSum(numbers){
  return numbers.reduce(function(sum, n){
    return (n*n) + sum;
  }, 0)
}
  1. reduce 함수를 이용해서 배열 내 인수들을 순회하며 본인의 숫자를 곱하기해서 제곱을 만들고 더하는 함수를 통해 코드 구현 

 

'Java Script > 알고리즘 풀이' 카테고리의 다른 글

[알고리즘] 0823  (0) 2023.08.23
[알고리즘] 0822  (0) 2023.08.22
[알고리즘] 0820  (0) 2023.08.20
[알고리즘] 0817  (0) 2023.08.17
[알고리즘] 0816  (0) 2023.08.16