4월 2일 코테 문제 복기

hams·2023년 4월 3일
0

algorithm

목록 보기
25/62

Q1.

돌림판이 있다. "돌림판"을 돌려 상품을 얻을 수 있다.
이 돌림판은 큰 원형판이 4등분되어있는 형태이다.

90도 미만은 상품1
180도 미만은 상품2
270도 미만은 상품3
360도 미만은 상품4
을 받을 수 있다

예를 들면,
[67,54,720,350,79]
처음엔 67도
두번째엔 54도
세번째엔 720도
네번째엔 350도
다섯번째엔 69도로

각각 받을 수 있는 상품은
상품1, 상품2, 상품2, 상품2, 상품3으로

각 상품마다 받을 수 있는 개수는
[1, 3, 1, 0]이 된다

돌림판을 돌리는 차례대로 각도가 N이라는 배열에 주어지면
그에 따라 받을 수 있는 상품별 갯수를 구해라


해결 방법

function 돌림판(n) {
  const count = [0, 0, 0, 0]; // 각 상품의 개수를 0으로 초기화
  for (let i = 0; i < n.length; i++) {
    const angle = n[i] % 360; // 돌림판을 돌린 각도
    if (angle < 90) { // 상품1
      count[0]++;
    } else if (angle < 180) { // 상품2
      count[1]++;
    } else if (angle < 270) { // 상품3
      count[2]++;
    } else { // 상품4
      count[3]++;
    }
  }
  return count;
}

돌림판 각도별 나눈 나머지 값의 각도로 받을 상품을 판별하여 각 개수를 COUNT에 넣어줘서 return했다.

Q2.

그리디 알고리즘? ㄴㄴ..

재료 a,b,c의 수량 [2,4,5]
아메리카노, 라떼, 모카의 금액과 각 음료를 만들기 위해 필요한 재료의 수
[[1000,
손님이 주문한 커피의 수 [1,4,5]
가 주어졌을 때 있는 재료를 가지고 만들었을 때 나오는 가장 높은 금액

Q3.

x좌표와 y좌표 주어지고 빛의 밝기가 주어졌을 때
[3,0,2]

x좌표 3
y좌표 0에 있는 위치에서 2만큼 떨어진 곳에서 관측할 수 있는 밝기

0개의 댓글