기초부터 시작하는 코딩/Programmers

Programmers 문제를 풀어봅시다. Day9

kebab00 2023. 5. 26. 23:32

728x90

1.점의 위치 구하기

사분면은 한 평면을 x축과 y축을 기준으로 나눈 네 부분입니다. 사분면은 아래와 같이 1부터 4까지 번호를매깁니다.

  • x 좌표와 y 좌표가 모두 양수이면 제1사분면에 속합니다.
  • x 좌표가 음수, y 좌표가 양수이면 제2사분면에 속합니다.
  • x 좌표와 y 좌표가 모두 음수이면 제3사분면에 속합니다.
  • x 좌표가 양수, y 좌표가 음수이면 제4사분면에 속합니다.

x 좌표 (x, y) 차례대로 담은 정수 배열 dot 매개변수로 주어집니다. 좌표 dot 사분면 어디에 속하는지 1, 2, 3, 4 하나를 return 하도록 solution 함수를 완성해주세요.

- 정답은

function solution(dot) {
    let answer = 0;

    dot[0] > 0 && dot[1] > 0 ? answer = 1: null;
    dot[0] < 0 && dot[1] > 0 ? answer = 2: null;
    dot[0] < 0 && dot[1] < 0 ? answer = 3: null;
    dot[0] > 0 && dot[1] < 0 ? answer = 4: null;

    return answer;
}

2. 점의 위치 구하기

선분 세 개로 삼각형을 만들기 위해서는 다음과 같은 조건을 만족해야 합니다.

  • 가장 긴 변의 길이는 다른 두 변의 길이의 합보다 작아야 합니다.

삼각형의 변의 길이가 담긴 배열 sides 매개변수로 주어집니다. 변으로 삼각형을 만들 있다면 1, 만들 없다면 2 return하도록 solution 함수를 완성해주세요.

- 정답은

function solution(sides) {
  let answer = 0;
  sides.sort((a, b) => a - b);

  if (sides[2] < sides[0] + sides[1]) {
    answer = 1;
  } else {
    answer = 2;
  }

  return answer;
}

3. 배열 원소의 길이

문자열 배열 strlist가 매개변수로 주어집니다. strlist 각 원소의 길이를 담은 배열을 retrun하도록 solution 함수를 완성해주세요.

function solution(strlist) {
  let answer = new Array(strlist.length);

  for (let i = 0; i < strlist.length; i++) {
    answer[i] = strlist[i].length;
  }
  return answer;
}