05AB1E , 8 (또는 10?) 11 (또는 13?) 바이트
Ÿʒ₄n+¦S3ôOË
온라인으로 시도 하거나 더 많은 테스트 사례를 확인 하십시오 .
참고 : 05AB1E에서 문자열과 정수는 서로 바꿔서 사용할 수 있으므로 출력 숫자에 선행 0이 포함되지 않습니다. 그러나 이것은 1 추가 바이트 ( 12 바이트) 로 고정 될 수 있습니다 ) .
Ÿ₄n+€¦ʒS3ôOË
온라인으로 사용해보십시오 하거나 더 많은 테스트 사례를 확인 .
길이가 3 이하인 버그 수정 번호에 +3 바이트 (범위) [000000, 000999] ).
설명:
Ÿ # Create an inclusive (on both sides) range from the two inputs
# i.e. 038920 and 038910 →
# [38910,38911,38912,38913,38914,38915,38916,38917,38918,38919,38920]
ʒ # Filter this list by:
₄n+ # Add 1,000,000 to the number
| # And remove the leading 1
# i.e. 38910 → 1038910 → '038910'
S # Transform it to a list of digits
# i.e. '038910' → ['0','3','8','9','1','0']
3ô # Split it into chunks of length 3
# i.e. ['0','3','8','9','1','0'] → [['0','3','8'],['9','1','0']]
O # Sum the digits in both parts
# i.e. [['0','3','8'],['9','1','0']] → [11,10]
Ë # Check if they are equal (if they are, they remain in the filtered list)
# i.e. [11,10] → 0
편집 : 나 (그리고 대부분의 다른 답변)가 도전을 약간 잘못 읽은 것으로 보이며 범위 내의 숫자 자체 대신 숫자의 양을 묻는 것입니다. 이 경우 후행 }g을 추가 할 수 있습니다 (필터를 닫고 필터링 된 목록에 남아있는 숫자의 양을 얻음). 대신 10 13 바이트입니다 .
Ÿʒ₄n+¦S3ôOË}g
온라인으로 시도 하거나 더 많은 테스트 사례를 확인 하십시오 .