feast.js (8kyu 26)

Codewars 알고리즘 풀이


Description

  • All of the animals are having a feast.
    • 동물들의 잔치가 있다.
  • Each animal is bringing one dish.
    • 각 동물은 음식을 하나 가져온다.
  • There is just one rule: the dish must start and end with the same letters as the animal's name.
    • 하나의 규칙이 있다.
    • 음식은 동물의 이름과 같은 글자로 시작하고 끝나야 한다.
  • Write a function that takes the animal's name and dish as arguments and returns true or false to indicate whether the beast is allowed to bring the dish to the feast.
    • 동물들이 음식을 잔치에 가져갈 수 있는지 확인하고, true 또는 false를 반환한다.



Solution 01

function feast(beast, dish) {
  const b1 = beast[0];
  const b2 = beast[beast.length - 1];
  const d1 = dish[0];
  const d2 = dish[dish.length - 1];
  
  return b1 === d1 && b2 === d2 ? true : false;
}

feast('panda', 'potato pizza');    // true
feast('panda', 'hawaiian pizza');  // false
feast('chicken', 'cold chicken');  // true
feast('chicken', 'hot chicken');   // false


Solution 02

function feast(beast, dish) {
  const b1 = beast[0];
  const b2 = beast[beast.length - 1];
  const d1 = dish[0];
  const d2 = dish[dish.length - 1];
  
  return b1 === d1 && b2 === d2;
}

feast('panda', 'potato pizza');    // true
feast('panda', 'hawaiian pizza');  // false
feast('chicken', 'cold chicken');  // true
feast('chicken', 'hot chicken');   // false


Solution 03

function feast(beast, dish) {
  const b = beast[0] + beast[beast.length - 1];
  const d = dish[0] + dish[dish.length - 1];
  
  return b === d;
}

feast('panda', 'potato pizza');    // true
feast('panda', 'hawaiian pizza');  // false
feast('chicken', 'cold chicken');  // true
feast('chicken', 'hot chicken');   // false


Solution 04

function feast(beast, dish) {
  const b = beast.slice(0, 1) + beast.slice(-1);
  const d = dish.slice(0, 1) + dish.slice(-1);
  
  return b === d;
}

feast('panda', 'potato pizza');    // true
feast('panda', 'hawaiian pizza');  // false
feast('chicken', 'cold chicken');  // true
feast('chicken', 'hot chicken');   // false