이 StackOverflow 게시물에서 영감을 얻었 습니다.
소개
Bob의 임무는 스프레드 시트를 작성하고 구성하는 것입니다. 그가 구성하는 방식은 Bob을 제외하고는 거의 알려져 있지 않지만 동일한 그룹에 속하는 각 스프레드 시트 목록을 작성합니다. 그가 만든 스프레드 시트에는 많은 데이터가 있지만 지금보고있는 데이터는 단 하나뿐입니다. 그가이 일을 시작한 날과 스프레드 시트를 만든 날 사이의 일수입니다. 첫날 그는 두 개의 스프레드 시트를 작성 0하여 해당 위치로 분류하고 정렬했습니다.
이제 그의 상사는 매일 어떤 종류의 스프레드 시트가 발생했는지 검토하도록 요청하고 있으며 Bob에게이를 알아낼 코드를 작성하는 것이 당신의 임무입니다. 손으로 할 수있는 스프레드 시트가 너무 많습니다.
입력
Bob이 제공 한 정보는 각 데이텀이 형식 인 (0 또는 1 인덱스) 들쭉날쭉 한 배열의 형태로 제공 x = a[i][j]됩니다. a들쭉날쭉 한 배열 자체라고 부르는 것이 i스프레드 시트의 유형이며 x배열이 작성된 날짜입니다. j중요하지 않습니다.
작업
스프레드 시트 생성 날짜가 유형별로 구성되어있는 들쭉날쭉 한 배열이 지정된 경우 스프레드 시트 생성 일로 구성된 스프레드 시트 유형이 들쭉날쭉 한 배열을 반환합니다.
예
밥은이 추상적 인 데이터 만 남기려고하지 않습니다. 그는 모든 것이 무엇인지 알아내는 데 도움이되는 스프레드 시트 중 일부를 나에게주었습니다.
입력 예 (0 인덱스) :
a = [
[3,2,5,0], # Bob doesn't necessarily sort his lists
[1,3],
[2,1,0,4],
[4,5,3],
[6,6]
]
출력 예 (주석이 필요하지 않은 주석) :
output = [
[0,2] # On day 0, Bob made one type 0 and one type 2 spreadsheet
[1,2] # On day 1, Bob made one type 1 and one type 2 spreadsheet
[0,2] # On day 2, Bob made one type 0 and one type 2 spreadsheet
[0,1,3] # On day 3, Bob made one type 0, one type 1, and one type 3 spreadsheet
[2,3] # On day 4, Bob made one type 2 and one type 3 spreadsheet
[0,3] # On day 5, Bob made one type 0 and one type 3 spreadsheet
[4,4] # On day 6, Bob made two type 4 spreadsheets
]
Bob이 매일 두 개의 스프레드 시트를 만드는 것은 아니기 때문에 결과물이 들쭉날쭉해질 수 있습니다. 그러나 그는 매일 적어도 하나의 스프레드 시트를 작성하므로 출력에 빈 배열이 포함될 필요는 없습니다. 출력에 빈 배열이 있으면 제거 할 필요는 없습니다.
더 많은 테스트 사례 :
[[3,5,6,2],[0,0,0],[1,0,3,4]] -> [[1,1,1,2],[2],[0],[0,2],[2],[0],[0]]
[[-1]] -> Undefined behavior, as all input numbers will be non-negative integers.
[[0],[0],[],[0]] -> [[0,1,3]]
출력의 내부 목록은 정렬 할 필요가 없습니다.
항상 그렇듯이 표준 허점이 없으며 물론 가장 짧은 코드가 승리합니다.
(이것이 나의 첫 번째 질문이므로 개선하기 위해 할 수있는 일을 알려주십시오.)
[[0 0]]출력 을 줄 수 [[0 0] []]있습니까?