TIL_0606 알고리즘 풀이

Koohyeon·2021년 6월 7일
0

Algorithm

목록 보기
10/19

20. 가위 바위 보

  • 나의 풀이
    function solution(a, b) {
      let answer = "";
      for(let i = 0; i < a.length; i++) {
        if(a[i] === b[i]) answer += "D"
        
        if(a[i] - b[i] == 1 || a[i] - b[i] == -2) answer += "A" 
        else if (b[i] - a[i] == 1 || b[i] - a[i] == -2) answer +="B"

      }
      return answer;
    }

-> 뭔가 무식한 풀이 방법같은데 이 이상의 효율적인 규칙을 찾아내지 못 했다. 강의를 듣고나니 나름 잘 짠 거 같다...

21. 점수 계산

  • 나의 풀이
    function solution(a) {
      let answer = 0;
      let score = [];
      for(let i = 0; i < a.length; i++) {
        if(a[i] == 0) score.push(0);
        else if (a[i] == a[i-1]) score.push(score[i-1]+1);
        else score.push(1);
      }
      score.reduce((prev, curr) => {
        answer = prev + curr;
        return answer
      })
      return answer;
    }

-> reduce 메서드에서 return으로 값을 반환하는 것을 잊어서 한참 헤맸다. 훨씬 간단하게 해결할 수 있는 문제였는데 그래지 못해서 아쉽다.

0개의 댓글

관련 채용 정보