FRONT/JAVASCRIPT

[Javascript] 알고리즘-가위바위보

연듀 2022. 3. 29. 09:38

인프런 자바스크립트 알고리즘 문제풀이(코딩테스트 대비) 

섹션 2-3

 

내 풀이

function solution(a, b) {
  let answer = "";
  for (let i = 0; i < 5; i++) {
    if (a[i] > b[i]) {
      //a가 b보다 클 때 (3,1)인 경우 빼고 a가 이김
      if (a[i] === 3 && b[i] === 1) {
        answer += "B";
      } else answer += "A";
    } else if (a[i] < b[i]) {
      // b가 a보다 클 때 (1,3)인 경우 빼고 b가 이김
      if (a[i] === 1 && b[i] === 3) {
        answer += "A";
      } else answer += "B";
    } else {
      // 비겼을 때
      answer += "D";
    }
  }
  return answer;
}

let a = [2, 3, 3, 1, 3];
let b = [1, 1, 2, 2, 3];
console.log(solution(a, b));

 

선생님 풀이

function solution(a, b) {
  let answer = "";
  for (let i = 0; i < 5; i++) {
    if (a[i] === b[i]) answer += "D" + " ";
    else if (a[i] === 1 && b[i] === 3) answer += "A" + " ";
    else if (a[i] === 2 && b[i] === 1) answer += "A" + " ";
    else if (a[i] === 3 && b[i] === 2) answer += "A" + " ";
    else answer += "B" + " ";
  }
  return answer;
}

let a = [2, 3, 3, 1, 3];
let b = [1, 1, 2, 2, 3];
console.log(solution(a, b));

A가 이기는 경우만 따져준다.