TIL. 30 CodeKata 6~7일차

Minjae Choi·2021년 6월 30일
0

Coding Test

목록 보기
3/4

🎈 CodeKata


6일차 문제

로마자에서 숫자로 바꾸기
1~3999 사이의 로마자 s를 인자로 주면 그에 해당하는 숫자를 반환해주세요.

Symbol : Value
I : 1
V : 5
X : 10
L : 50
C : 100
D : 500
M : 1000


7일차 문제

숫자로 이루어진 배열인 nums를 인자로 전달합니다.
숫자중에서 과반수(majority, more than a half)가 넘은 숫자를 반환해주세요.

function moreThanHalf(nums) {  
  for (i = 0; i < nums.length; i++) {
    count = 0

    for (j = 0; j < nums.length; j++) {
      if (nums[i] === nums[j]) {
        count += 1    
      }
    }

    if (count > nums.length / 2) {
      return nums[i]
    }
  }
}

// 과반수는 반이 넘는 수이다. 어떤 숫자의 갯수가 전체 배열의 반이 넘으면 해당된다.
// 배열의 i와 j번째를 계속해서 비교하고, 같을 때마다 count를 센다. 결론적으로 count가 전체 배열의 반을 넘으면 그 count된 수를 반환한다.

  • for문을 사용하지 않고 진행을 해보려고 했지만 쉽지 않았다. 여러 방법으로 진행하며 많은 방향으로 접근해 풀 수 있는 역량을 기르려고 노력하자!(구글링도 직접적인 코드 검색이 아닌 연관있는 함수나 부분적인 코드로 스스로 제작하려고 해보자

0개의 댓글