СРАВНЕНИЕ ЗАДАЧ ТРОЙНИ HACKERRANK (РЕШЕНИЕ)
ПОСТАНОВКА ЗАДАЧИ:Алиса и Боб создали по одной задаче для HackerRank. Рецензент оценивает две задачи, присуждая баллы по шкале от 1 до 100 по трем категориям: ясность задачи, оригинальность и сложность.
Задача состоит в том, чтобы найти их точки сравнения путем сравнения a[0] с b[0 ], a[1] с b[1] и a[2] с b[2].
Если a[i] > b[i], то Алиса получает 1 очко.
Если a[i] ‹ b[i], то Боб получает 1 балл.
Если a[i] = b[i], то ни один человек не получает балл.
Баллы сравнения — это общее количество баллов a человек заработал.
Учитывая a и b, определите их соответствующие точки сравнения.

РЕШЕНИЕ:

шаг 1:мы объявляем нашу функцию, назовем ее compareTriplets

function compareTriplets(a, b){
}

шаг 2: объявите счетчики для отслеживания количества раз, когда элементы внутри каждого массива больше, меньше или равны друг другу.

function compareTriplets(a,b) {
     let counterA = 0;
     let counterB = 0;
}

шаг 3: объявите массивы для сбора значений счетчиков, объявленных на шаге 2.

function compareTriplets(a,b) {
      let counterA = 0;
      let counterB = 0;
      let finalArray1 = [];
      let finalArray2 = [];
}

шаг 4:объявите переменную итератора, которая получает ключи первого массива(а)

function compareTriplets(a,b) {
      let counterA = 0;
      let counterB = 0;
      let finalArray1 = [];
      let finalArray2 = [];
      const iterator = a.keys();
}

шаг 5: объявите оператор цикла for. Этот цикл использует итератор для сравнения значений в двух массивах, устанавливает счетчики на увеличение или уменьшение и, наконец, помещает счетчики в их массивы (finalArray1, finalArray2)

function compareTriplets(a,b) {
      let counterA = 0;
      let counterB = 0;
      let finalArray1 = [];
      let finalArray2 = [];
      const iterator = a.keys();
     for (const key of iterator) {
         if (a[key] > b[key]) {
            counterA++;
            counterB += 0;
            finalArray1.push(counterA);
            finalArray2.push(counterB);
         }
         if (a[key] < b[key]) {
             counterB++;
             counterA += 0;
             finalArray2.push(counterB);
             finalArray1.push(counterA);
         }
         if (a[key] == b[key]) {
            counterA += 0;
            counterB += 0;
            finalArray2.push(counterB);
            finalArray1.push(counterA);
          }
     }
}

шаг 6: мы собираем последние значения из finalArray1 и finalArray2 соответственно и передаем их в выходной массив

function compareTriplets(a,b) {
      let counterA = 0;
      let counterB = 0;
      let finalArray1 = [];
      let finalArray2 = [];
      const iterator = a.keys();
for (const key of iterator) {
         if (a[key] > b[key]) {
            counterA++;
            counterB += 0;
            finalArray1.push(counterA);
            finalArray2.push(counterB);
         }
         if (a[key] < b[key]) {
             counterB++;
             counterA += 0;
             finalArray2.push(counterB);
             finalArray1.push(counterA);
         }
         if (a[key] == b[key]) {
            counterA += 0;
            counterB += 0;
            finalArray2.push(counterB);
            finalArray1.push(counterA);
          }
     }
    
     const res1 = finalArray1[finalArray1.length - 1];
     const res2 = finalArray2[finalArray2.length - 1];
     const output = [res1, res2];
     console.log(output);
     return output;
}

шаг 7: запускаем функцию для всех тестовых случаев Hackerrank.

function compareTriplets(a,b) {
      let counterA = 0;
      let counterB = 0;
      let finalArray1 = [];
      let finalArray2 = [];
      const iterator = a.keys();
for (const key of iterator) {
         if (a[key] > b[key]) {
            counterA++;
            counterB += 0;
            finalArray1.push(counterA);
            finalArray2.push(counterB);
         }
         if (a[key] < b[key]) {
             counterB++;
             counterA += 0;
             finalArray2.push(counterB);
             finalArray1.push(counterA);
         }
         if (a[key] == b[key]) {
            counterA += 0;
            counterB += 0;
            finalArray2.push(counterB);
            finalArray1.push(counterA);
          }
     }
    
     const res1 = finalArray1[finalArray1.length - 1];
     const res2 = finalArray2[finalArray2.length - 1];
     const output = [res1, res2];
     console.log(output);
     return output;
}
compareTriplets([1,2,3], [3,2,1])
compareTriplets([5,6,7], [3,6,10])
compareTriplets([17,18,30], [99,16,8])
compareTriplets([20,20,30], [20,20,50])
compareTriplets([6,8,12], [7,9,15])
compareTriplets([10,15,20], [5,6,7])

Результат: