23.3.26

커피 내리는 그냥 사람·2023년 3월 26일
0

입사 후 블로그

목록 보기
10/24

프로그래머스 풀다가 약간 막힌 것

최댓값 만들기 (2)

function solution(numbers) {
    var answer = 0;
    let newNumbers = numbers.sort((a, b) => a-b)
    let minus = newNumbers[0] * newNumbers[1]
    // 음수일 때 곱하면 최댓값 나오게
    let plus = newNumbers[newNumbers.length - 1] * newNumbers[newNumbers.length -2]
    // 양수일 때 곱하면 최댓값 나오게
    if(minus > plus){
        answer = minus
    }else{
        answer = plus
    }
  // 둘 비교 후 큰 것 answer로 리턴
    return answer;
}

인덱스 바꾸기

function solution(my_string, num1, num2) {
    let answer = '';
    let newMy_string = my_string.split('')
    let temp1 = newMy_string[num1]
    let temp2 = newMy_string[num2]
    // 임의의 변수에 인덱스의 값을 넣는다.
    newMy_string[num1] = temp2
    newMy_string[num2] = temp1
  // 차례로 위치를 바꾼다.
    answer = newMy_string.join('')
  // join으로 다시 문자열로 만들어준다.
    return answer;
}

배열 회전시키기

메서드만 활용하면 엄청 간단한 것이었다... 메서드 공부했다.

function solution(numbers, direction) {
    if(direction === 'right') {
      // 오른쪽으로 회전이면
        numbers.unshift(numbers.pop())
      // 끝에 꺼 삭제한 걸 맨 왼쪽에 넣기
    } else {
        numbers.push(numbers.shift())
     // 그 반대
    }
    return numbers
}
  • unshift : 배열의 맨 앞에 삽입
  • pop : 배열의 마지막 삭제 후 반환
  • push : 배열의 맨 끝에 삽입
  • shift : 배열의 맨 앞에 삭제 후 반환
profile
커피 내리고 향 맡는거 좋아해요. 이것 저것 공부합니다.

0개의 댓글