데이터 구조 및 알고리즘 102: 데이터 구조 및 알고리즘 심층 분석

3077 단어
Alice와 Bob은 각각 HackerRank에 대해 하나의 문제를 생성했습니다. 검토자는 문제 명확성, 독창성 및 어려움의 세 가지 범주에 대해 1에서 100까지의 점수를 부여하여 두 가지 과제를 평가합니다.

Alice의 도전에 대한 등급은 a = (a[0], a[1], a[2])이고 Bob의 도전에 대한 등급은 b = (b[0], b[1], b [2]).

작업은 a[0]과 b[0], a[1]과 b[1], a[2]와 b[2]를 비교하여 비교 지점을 찾는 것입니다.
  • a[i] > b[i]이면 Alice에게 1점이 부여됩니다.
  • a[i] < b[i]이면 Bob에게 1점이 부여됩니다.
  • a[i] = b[i]이면 두 사람 모두 점수를 받지 못합니다.

  • 비교 포인트는 개인이 획득한 총 포인트입니다.

    a와 b가 주어지면 각각의 비교점을 결정하십시오.

    예시

    a = [1, 2, 3]
    b = [3, 2, 1]
  • 요소 0의 경우 a[0] 때문에 Bob에게 점수가 부여됩니다.
  • 동일한 요소 a[1] 및 b[1]의 경우 포인트가 적립되지 않습니다.
  • 마지막으로 요소 2의 경우 a[2] > b[2]이므로 Alice는 포인트를 받습니다.

  • 반환 배열은 [1, 1]이며 Alice의 점수가 첫 번째이고 Bob의 점수가 두 번째입니다.

    기능 설명

    아래 편집기에서 compareTriplets 기능을 완료하십시오.

    compareTriplets에는 다음 매개변수가 있습니다.
  • int a[3]: Alice의 도전 등급
  • int b[3]: Bob의 챌린지 등급

  • 반품

    int[2]: Alice의 점수는 첫 번째 위치에 있고 Bob의 점수는 두 번째 위치에 있습니다.

    입력 형식

    첫 번째 줄에는 3개의 공백으로 구분된 정수 a[0], a[1] 및 a[2]가 포함되며 각각의 값은 3중 항 a에 있습니다.
    두 번째 줄에는 3개의 공백으로 구분된 정수 b[0], b[1] 및 b[2]가 포함되며 각각의 값은 3중 항 b입니다.

    제약
  • 1 ≤ a[i] ≤ 100
  • 1 ≤ b[i] ≤ 100

  • 샘플 입력 0

    5 6 7
    3 6 10
    


    샘플 출력 0

    1 1
    


    설명 0

    이 예에서:
  • = (a[0],a[1],a[2])=(5,6,7)
  • b = (b[0],b[1],b[2])=(3,6,10)

  • 이제 각 개별 점수를 비교해 보겠습니다.
  • a[0] > b[0], 그래서 Alice는 포인트를 받습니다.
  • a[1] = b[1]이므로 아무도 점수를 받지 못합니다.
  • a[2] < b[2], 그래서 Bob은 포인트를 받습니다.

  • Alice의 비교 점수는 1이고 Bob의 비교 점수는 1입니다. 따라서 배열 [1,1]을 반환합니다.

    샘플 입력 1

    17 28 30
    99 16 8
    


    샘플 출력 1

    2 1
    


    설명 1

    0#번째 요소를 17<99로 비교하면 Bob이 점수를 얻습니다.
    1#st와 2#nd 요소를 비교하면 28>16과 30>18이므로 Alice는 2점을 얻습니다. 반환 배열은 [2,1]입니다.

    PHP 솔루션:

    function compareTriplets($a, $b) {
        // Write your code here
        $aAward = 0;
        $bAward = 0;
    
        for ($i=0;$i<3;$i++){
            if($a[$i]>$b[$i]){
                $aAward +=1;
            }elseif($a[$i]<$b[$i]){
                $bAward +=1;
            }
        }
    
    return array($aAward,$bAward);
    }
    


    Python3에서:

    def compareTriplets(a, b):
        # Write your code here
        aAward = 0
        bAward = 0
    
        for i in range(0,3):
            if(a[i]>b[i]):
                aAward += 1
            if (a[i]<b[i]):
                bAward += 1
    
        return [aAward,bAward] 
    


    코틀린에서:

    fun compareTriplets(a: Array<Int>, b: Array<Int>): Array<Int> {
    
        var aAward =0 
        var bAward= 0 
        // Write your code here
    
        for (i in 0..2){
            if(a[i]>b[i]){
                aAward += 1
            }
            if(a[i]<b[i]){
                bAward +=1
            } 
        }
    return arrayOf(aAward,bAward);
    }
    
    

    좋은 웹페이지 즐겨찾기