문자열을 사용하지 않고 (필요한 경우 입력 또는 출력과 같은 경우 제외) 왼쪽 에서 정수의 10 번째 자릿수 (기본 10)를 계산합니다.
입력은 다음 형식으로 제공됩니다 :
726433 5
출력은 다음과 같아야합니다.
3
"726433"의 다섯 번째 자리입니다.
입력에 선행 0이 포함 되지 않습니다 ( 예 : "00223").
테스트 사례 / 추가 예 :
9 1 -> 9
0 1 -> 0
444494 5 -> 9
800 2 -> 0
이것은 코드 골프입니다. 문자 수가 가장 적지 만 "nthDigit (x, n)"과 같은 내장 함수는 사용할 수 없습니다 .
시작하는 의사 코드는 다음과 같습니다.
x = number
n = index of the digit
digits = floor[log10[x]] + 1
dropRight = floor[x / 10^(digits - n)]
dropLeft = (dropRight / 10 - floor[dropRight / 10]) * 10
nthDigit = dropLeft
보시다시피, 저는 골프를 처음 봤는데 질문에 대답하기 전에 질문을하는 것이 약간 불공평하다고 생각하지만, 이것이 어떤 종류의 반응을 일으키는 지보고 싶습니다. :)
편집 : 수학 답변을 원했기 때문에 문자열을 배열로 변환하거나 숫자 목록으로 숫자에 액세스 할 수있는 답변을 실제로 받아 들일 수 없습니다.
우리는 승자가있다
12 바이트 "dc"로 작성되었습니다 . 으로 DigitalTrauma .