[level 2] 최솟값 만들기

2022. 2. 5. 15:13·알고리즘/JavaScript

문제

 

풀이 코드

function solution(A,B){
    let a = A.sort((a,b) => a - b);
    let b = B.sort((a,b) => a - b).reverse();
    let sum = 0;
    
    for (let i = 0; i < a.length; i++) {
        sum = sum + (a[i] * b[i]);
    }
    return sum;
}

 

풀이 과정

우선, A 배열과 B 배열을 모두 정렬하되, 

A배열은 오름차순, B 배열은 내림차순으로 정렬 하였다,

 

이렇게 한 이유는 문제에서 각 요소의 곱을 모두 더하여 최솟값을 만드는 문제였다,

따라서 하나의 배열내의 최대값과,  또 다른 배열내의 최소값을 곱해 모두 더하면 그게 최소값이 될것이다.

 

이렇게 정렬한 후, for 루프를 통해 각 요소의 곱을 sum 변수에 누적 합산 하였다.

 

다른사람의 풀이

function solution(A,B){
    A.sort((a, b) => a - b)
    B.sort((a, b) => b - a)
    return A.reduce((total, val, idx) => total + val * B[idx], 0)
}

풀이 방법이 비슷하지만 reduce 라는 내장함수를 사용하셨다

'알고리즘/JavaScript' 카테고리의 다른 글
  • [level 2] N개의 최소공배수
  • [level 2] JadenCase 문자열 만들기
  • [level 1] 완주 하지 못한 선수
  • [level 1] 로또의 최고 순위와 최저 순위
Jeohong
Jeohong
기억 보단 기록을
  • Jeohong
    Chikong Devlog
    Jeohong
  • 전체
    오늘
    어제
    • 분류 전체보기 (186)
      • ---- 개발 컨텐츠 ---- (0)
      • iOS (30)
        • Swift 문법 (1)
        • iOS 개념 (12)
        • HIG (5)
        • SwiftUI (7)
        • UIKit (4)
      • Side Project (0)
      • 개발서적 (4)
        • 객체지향 사실과 오해 (4)
      • 알고리즘 (74)
        • 자료구조 개념 (2)
        • Swift (25)
        • JavaScript (47)
      • ---- 회고 계획 컨텐츠 ---- (0)
      • 계획 및 일기 (10)
      • 회고록 (1)
      • 컨퍼런스 탐방 (1)
      • 미드로 영린이 탈출하기 (1)
      • ---- Previous content ---- (0)
      • Frontend (2)
        • HTML & CSS (2)
      • KITRI 수업 (17)
        • 리눅스 (14)
        • 네트워크 (2)
      • 42seoul (17)
        • Bonr2code (9)
        • 넋두리 (7)
        • 멘토특강 (1)
      • 해킹 실습 (20)
        • 해커스쿨 - F.T.Z (19)
        • WebGoat (1)
      • Tensorflow로 시작하는 NLP (1)
        • 예제 (1)
      • 자연어처리 입문 (1)
        • 이론 (1)
      • 텐서플로로 배우는 딥러닝 (7)
        • 이론 (2)
        • 예제 (5)
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    코딩
    프로그래머스
    javascript
    42seoul
    개발자
    hig
    라피신
    IOS
    본과정
    자료구조
    Algorithm
    백준
    알고리즘
    네트워크
    swift
    1서클
    스위프트
    SwiftUI
    42서울
    boj
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
Jeohong
[level 2] 최솟값 만들기
상단으로

티스토리툴바