기초부터 시작하는 코딩/Programmers

Programmers 문제를 풀어봅시다. Day26

kebab00 2023. 6. 13. 09:20

Every strike brings me closer to the next home run.

Babe Ruth

728x90

1. 세균 증식

어떤 세균은 1시간에 두배만큼 증식한다고 합니다. 

처음 세균의 마리수 n과 경과한 시간 t가 매개변수로 주어질 때 t시간 후 세균의 수를 return하도록 solution 함수를 완성해주세요.

function solution(n, t) {
    let answer = 0;
    answer=Math.pow(2,t)*n
    return answer;
}

 

- answer라는 변수를 0으로 초기화한 answer Math.pow(2, t) * n 결과를 대입합니다.

- Math.pow(2, t) 2 t승을 계산하는 함수입니다.

- 이 값에 n 곱한 , answer 대입하여 결과를 계산합니다.

2. 문자열 정렬하기 (2)

영어 대소문자로 이루어진 문자열 my_string이 매개변수로 주어질 때, 

my_string을 모두 소문자로 바꾸고 알파벳 순서대로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요.

function solution(my_string) {
    let answer = my_string.toLowerCase().split('').sort().join('');
    return answer;
}

 

- my_string.toLowerCase() 통해 my_string 모든 문자를 소문자로 변환합니다.

- 그 , .split('') 사용하여 문자열을 개별 문자로 나눕니다.

- .sort() 호출하여 문자 배열을 정렬합니다.

- 이때, 기본적으로는 문자열의 유니코드 코드 포인트 값을 기준으로 오름차순으로 정렬됩니다.

- 마지막으로 .join('') 호출하여 정렬된 문자 배열을 다시 하나의 문자열로 합칩니다.

- 이때, 문자열을 구분자로 사용하므로, 문자들이 붙어서 합쳐진 결과 문자열이 반환됩니다.

2. 7의 개수

머쓱이는 행운의 숫자 7을 가장 좋아합니다. 

정수 배열 array가 매개변수로 주어질 때, 7이 총 몇 개 있는지 return 하도록 solution 함수를 완성해보세요.

function solution(array) {
  let num = "";
  for (let i = 0; i < array.length; i++) {
    num += array[i];
  }
  
  let strChar = num.split('');
  let answer = 0;
  
  for (let i = 0; i < strChar.length; i++) {
    console.log(strChar[i]);
    if (strChar[i] === '7') {
      answer++;
    }
  }
  
  return answer;
}

- 반복문을 사용하여 array 요소를 num 문자열에 추가합니다.

- 그리고 num split('') 사용하여 문자로 분할한 배열 strChar 만듭니다.

- 배열 strChar 요소를 검사하면서, 해당 요소가 '7'인지 확인합니다.

- 만약 '7'이라면 answer 증가시킵니다.

- 마지막으로 answer 반환하여 등장하는 숫자 7 횟수를 돌려줍니다.

끝!