나는 여기에있는 대부분의 사람들이 숫자에 대한 7 세그먼트 디스플레이가 무엇인지 알고 있다고 생각합니다.
_ _ _ _ _ _ _ _
| | | _| _| |_| |_ |_ | |_| |_|
|_| | |_ _| | _| |_| | |_| _|
두 자리 사이 의 7- 세그먼트 차이 (7SD) 를 서로 전환하기 위해 토글해야하는 세그먼트 수로 정의 할 수 있습니다. 예를 들어 사이의 7SD 는 5 이고 (세 개의 수평 세그먼트와 아래쪽 두 개의 수직 세그먼트는 전환해야 함) 6과 8 사이의 7SD는 1 입니다.1
2
또한 두 숫자 사이의 7SD를 해당 숫자 사이의 7SD의 합으로 정의 할 수 있습니다 . 한 숫자가 다른 숫자보다 길면 숫자가 오른쪽으로 정렬되었다고 가정하고 더 큰 숫자의 가장 중요한 숫자를 표시하는 데 필요한 세그먼트 수를 추가합니다. 예를 들어 다음 12345
과 사이의 7SD를 고려하십시오 549
.
x: 1 2 3 4 5
y: 5 4 9
7SD: 2+5+2+0+1 = 10
당신의 임무는 것입니다 사이에 7SD을 계산 N 과 N + 1 , 주어진 N .
편의를 위해 다음은 개별 숫자 사이의 7SD 전체 테이블입니다. 행 _
은 빈 위치를 나타냅니다.
_ 0 1 2 3 4 5 6 7 8 9
_ 0 6 2 5 5 4 5 6 3 7 6
0 6 0 4 3 3 4 3 2 3 1 2
1 2 4 0 5 3 2 5 6 1 5 4
2 5 3 5 0 2 5 4 3 4 2 3
3 5 3 3 2 0 3 2 3 2 2 1
4 4 4 2 5 3 0 3 4 3 3 2
5 5 3 5 4 2 3 0 1 4 2 1
6 6 2 6 3 3 4 1 0 5 1 2
7 3 3 1 4 2 3 4 5 0 4 3
8 7 1 5 2 2 3 2 1 4 0 1
9 6 2 4 3 1 2 1 2 3 1 0
입력
- 입력은 단일 양의 정수
n
입니다. - STDIN (또는 가장 가까운 대안), 명령 행 인수 또는 함수 인수를 통해 입력을받는 프로그램 또는 함수를 작성할 수 있습니다.
- 입력 값이 최대 127보다 작은 값을 지원하는 한, 언어의 표준 정수 유형으로 표시 될 수있는 최대 숫자보다 하나 더 작다고 가정 할 수 있습니다.
산출
n
와 사이의 7SD 단일 정수를 인쇄해야합니다n+1
.- STDOUT (또는 가장 가까운 대안), 함수 반환 값 또는 함수 (out) 인수를 통해 출력 할 수 있습니다.
채점
표준 코드 골프 규칙이 적용되며 가장 짧은 코드 (바이트)가 이깁니다.
테스트 사례
모호한 이유로이 시퀀스는 아직 OEIS에 없지만 A123587 과 밀접한 관련이 있습니다. 다음은 처음 100 개의 숫자입니다 (로 시작 n = 1, 2, 3, ...
).
5, 2, 3, 3, 1, 5, 4, 1, 4, 4, 5, 2, 3, 3, 1, 5, 4, 1, 7, 4, 5, 2, 3, 3, 1,
5, 4, 1, 4, 4, 5, 2, 3, 3, 1, 5, 4, 1, 5, 4, 5, 2, 3, 3, 1, 5, 4, 1, 5, 4,
5, 2, 3, 3, 1, 5, 4, 1, 3, 4, 5, 2, 3, 3, 1, 5, 4, 1, 7, 4, 5, 2, 3, 3, 1,
5, 4, 1, 6, 4, 5, 2, 3, 3, 1, 5, 4, 1, 3, 4, 5, 2, 3, 3, 1, 5, 4, 1, 6, 4
7SD가 9보다 큰 첫 번째 입력은 1999
11을 산출하는 것입니다. 다른 더 큰 예는 다음과 같습니다.
n 7SD
1999 11
12345 1
999999 14
5699999 15
8765210248 1