복제 군인 찾기

PythonBeginner
지금 연습하기

소개

이 챌린지에서는 복제 군대 퍼레이드 대형에서 모든 복제 군인을 찾아야 합니다. 복제 군인은 특정 범위 내의 숫자로 고유하게 식별되며, 정사각형 행렬로 표현될 수 있습니다. 우리의 목표는 각 ID 별 복제 군인의 수를 세고, 통계적 결과를 딕셔너리 형식으로 반환하는 것입니다. 솔루션은 count_clone_soldier.py 파일의 count_clone_soldier(matrix: List[List[str]]) 메서드에서 구현되어야 합니다.

이것은 챌린지입니다. 실험 (Lab) 과 달리, 학습을 위해 실험의 단계를 따르는 것이 아니라, 독립적으로 챌린지 작업을 완료해야 합니다.챌린지는 일반적으로 조금 어렵습니다. 어려움을 겪었다면, Labby 와 논의하거나 해결책을 확인할 수 있습니다. 과거 데이터에 따르면, 이것은 초급 레벨의 챌린지이며 통과율은 82%입니다.학습자들로부터 90%의 긍정적인 리뷰율을 받았습니다.

복제 군인 찾기

챌린지 설명

머나먼 은하계에는 강력한 복제 군대를 보유한 은하 제국이 있습니다. 이 챌린지는 은하 제국의 복제 군대 퍼레이드 대형에서 모든 복제 군인을 찾는 것입니다.

챌린지 세부 정보

은하 제국의 각 복제 군인은 10000000부터 1000ffff까지의 숫자로 고유하게 식별됩니다. 복제 군인과 원본은 동일한 ID 를 공유합니다.

복제 군대 퍼레이드 대형은 정사각형 행렬로 표현될 수 있습니다. 예를 들어:

[['10000000', '10000012', '1000000d', '1000000d', '10000002'],
['10000004', '10000011', '10000017', '1000000b', '1000000f'],
['10000016', '1000000d', '10000018', '10000012', '10000011'],
['10000001', '1000000c', '10000008', '10000013', '10000000'],
['10000019', '10000000', '1000000e', '10000003', '10000004']]

이 챌린지는 행렬에서 모든 복제 군인을 찾아 각 ID 별 실제 복제 군인의 수를 세는 것입니다. 복제 군인과 원본은 동일한 ID 를 공유하므로, 행렬에 N번 나타나는 ID 는 하나의 원본과 N-1개의 복제 군인으로 구성됩니다. 따라서 ID 에 대한 복제 군인 수는 총 발생 횟수에서 1 을 뺀 값입니다. 마지막으로, 통계적 결과를 딕셔너리 형식 { 'ID': clone_count }로 반환합니다. 여기서 딕셔너리의 키는 ID 를 기준으로 오름차순으로 정렬되어야 합니다. 예를 들어, 위의 행렬에 대한 복제 군인의 통계적 결과는 다음과 같습니다.

{
'10000000': 2,
'10000004': 1,
'1000000d': 2,
'10000011': 1,
'10000012': 1,
}

이 결과는 ID 10000000 (행렬에 3 번 나타남) 에 대해 2 명의 복제 군인 (총 3 - 1 원본) 이 있음을 나타냅니다. 마찬가지로, ID 10000004 (2 번 나타남) 에 대해 1 명의 복제 군인 (총 2 - 1 원본) 이 있습니다. 한 번만 나타나는 ID (예: 10000002) 는 복제 군인이 0 명이며 최종 딕셔리에 포함되지 않아야 합니다.

챌린지 요구 사항

  1. ~/project 디렉토리에 count_clone_soldier.py 파일이 있는지 확인합니다.
  2. count_clone_soldier.py 파일의 count_clone_soldier(matrix: List[List[str]]) 메서드에서 챌린지를 구현합니다.
  3. 지정된 파일 이름, 클래스 이름, 메서드 정의 및 메서드 이름을 수정하지 마십시오.
  4. 클래스의 상속 관계 및 파일 경로를 수정하지 마십시오.
  5. 코드는 지정된 영역, 즉 count_clone_soldier.py 파일 내에서만 작성할 수 있습니다.
✨ 솔루션 확인 및 연습

요약

축하합니다! 복제 군인 찾기 챌린지를 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 실력을 향상시킬 수 있습니다.