Champernowne 상수는 무한대 경향이 있는 첫 번째 n
숫자 를 연결하여 구성되는 숫자 n
입니다. 다음과 같이 보입니다 :
0.123456789101112131415161718192021222324252627282930...
이제 Rien 번호를 설명하겠습니다 . 이것은 Champernowne 상수를 정수로 최소화 한 것으로 생각할 수 있습니다. 첫 번째 숫자가 Ri ( n ) 인 Rien 번호를 참조합니다 . 이것이 공식화 방법입니다.n
- 첫 번째
n
자연수 (시퀀스 {1,2,3, ...})가 연결됩니다. - 그런 다음이 결과는 숫자 값에 따라 정렬됩니다. 이렇게
1..12
보일 것011111223456789
입니다. - 때문에 리엔의 번호 앞에 0을 가질 수 없습니다, 우리는 모든 이동
0
, 그들이 말하는, 그 결과 최소 수를 유지하면서, 의미가 너무이야101111223456789
. 이것은 Ri ( n )이며,이 경우 Ri (12)입니다.
다음은 Ri ( n )에 대한 결과입니다 .
n Ri ( n ) 1 1 2 12 3,123 7 1234567 9 123456789 10 10123456789 15 101111111223344556789 34 10001111111111111222222222222223333333334444555666777888999 42 100001111111111111122222222222222233333333333333444444455556666777788889999 45100001111111111111122222222222222233333333333333344444444444555556666777788889999 55 10000011111111111111122222222222222223333333333333333444444444444444455555555555566666777778888899999 100 100000000000111111111111111111111112222222222222222222233333333333333333333444444444444444444445555555555555555555566666666666666666666777777777777777777778888888888888888888899999999999999999999 9991000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111112222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222223333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333334444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444445555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555556666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666667777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777778888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888889999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999
목표n
입력 ( 숫자 , STDIN 또는 언어가 기존 입력을 지원하지 않는 경우 하드 코딩을 통해)으로 1 ≤ <10000을 지정하면 출력 / 반환 Ri ( n
).
이것은 code-golf 이므로 바이트 단위의 가장 짧은 코드가 이깁니다. 이 도전에 대한 답변을하지 않은 한,이 콘테스트 후에 작성된 언어를 사용할 수 있습니다. (물론 흥미로운 솔루션을 제공하지만 대답을 경쟁이 아닌 것으로 표시하면 사용할 수 있습니다.)
참조 구현
나는 이것을 IE에서 테스트 했으므로 실제로 문제가되지 않아야합니다. 이 경우 인 문제, 쉬운 해결 방법이 있습니다 : 제정신이 브라우저를 얻을.
function min(n) {
var seq = [];
for(var i = 1; i <= n; i++) seq.push(i);
seq = seq.join("").split("").map(Number);
var to;
if(seq.indexOf(1) >= 0) to = seq.splice(seq.indexOf(1), 1);
seq.sort(function(a, b) {
return a - b;
});
if(to) seq = to.concat(seq);
return seq.join("");
}
t.onchange = t.onkeyup = function() {
h.innerHTML = min(this.value)
}
* {
font-family: Consolas, monospace;
}
input {
border: 2px dotted #aaaaaa;
border-radius: 5px;
margin: 10px;
}
<input id="t" type="number">
<div id="h">
리더 보드
이 게시물의 맨 아래에있는 스택 스 니펫은 답변 a) 언어 당 가장 짧은 솔루션 목록으로, b) 전체 리더 보드로 카탈로그를 생성합니다.
답변이 표시되도록하려면 다음 마크 다운 템플릿을 사용하여 헤드 라인으로 답변을 시작하십시오.
## Language Name, N bytes
N
제출물의 크기는 어디에 있습니까 ? 당신이 당신의 점수를 향상시킬 경우에, 당신은 할 수 있습니다 를 통해 눈에 띄는에 의해, 헤드 라인에 오래된 점수를 유지한다. 예를 들어 :
## Ruby, <s>104</s> <s>101</s> 96 bytes
헤더에 여러 숫자를 포함하려는 경우 (예 : 점수가 두 파일의 합계이거나 인터프리터 플래그 페널티를 별도로 나열하려는 경우) 실제 점수가 헤더 의 마지막 숫자 인지 확인하십시오 .
## Perl, 43 + 2 (-p flag) = 45 bytes
언어 이름을 링크로 만들면 스 니펫에 표시됩니다.
## [><>](http://esolangs.org/wiki/Fish), 121 bytes
1
s 중 하나를 s 앞으로 옮길 수 있습니다 0
.
0
은 IS 리엔 수.