[알고리즘] 가위바위보

SOH·2021년 9월 6일
0

가위바위보 경우의 수 ?

💡 조건

  • 가위 = 1 / 바위 = 2 / 보 = 3
  • A와 B 두 사람이 있을 때, A가 이기면 A를 출력, B가 이기면 B를 출력, 비기면 D를 출력

✍🏻 코드 작성 전, 로직 구현해보기

     가위(1), 바위(2) => B : a - b = -1
     가위(1), 보(3) => A : a - b = -2

     바위(2), 가위(1) => A : a - b = 1
     바위(2), 보(3) => B : a - b = -1 

     보(3), 바위(2) => A : a - b = 1
     보(3), 가위(1) => B : a - b = 2

     A가 이겼을 때 : 1, -2
     B가 이겼을 때 : -1, 2

     가위(1), 가위(1) => D
     바위(2), 바위(2) => D
     보(3), 보(3) => D

📘 코드

 function result(n, a, b) {
    let answer = '';

   	for (let i = 0; i < n; i++) {

       if (a[i] - b[i] === 1 || a[i] - b[i] === -2) {
         answer += 'A';

       } else if (a[i] - b[i] === -1 || a[i] - b[i] === 2) {
         answer += 'B';

       } else {
         answer += 'D';
       }
     }
   
   return answer;
 };

const array_A = [2, 3, 3, 1, 3];
const array_B = [1, 1, 2, 2, 3];

console.log(result(5, array_A, array_B)); // ABABD
profile
프론트엔드 개발자

0개의 댓글