복제 군인 찾기
챌린지 설명
머나먼 은하계에는 강력한 복제 군대를 보유한 은하 제국이 있습니다. 이 챌린지는 은하 제국의 복제 군대 퍼레이드 대형에서 모든 복제 군인을 찾는 것입니다.
챌린지 세부 정보
은하 제국의 각 복제 군인은 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 명이며 최종 딕셔리에 포함되지 않아야 합니다.
챌린지 요구 사항
~/project 디렉토리에 count_clone_soldier.py 파일이 있는지 확인합니다.
count_clone_soldier.py 파일의 count_clone_soldier(matrix: List[List[str]]) 메서드에서 챌린지를 구현합니다.
- 지정된 파일 이름, 클래스 이름, 메서드 정의 및 메서드 이름을 수정하지 마십시오.
- 클래스의 상속 관계 및 파일 경로를 수정하지 마십시오.
- 코드는 지정된 영역, 즉
count_clone_soldier.py 파일 내에서만 작성할 수 있습니다.