단일 정수 값 인수를 허용하는 함수 (또는 동등한 서브 프로그램)를 작성하고 인수의 10 자리 숫자의 순서를 반대로하여 찾은 (유사한 유형) 값을 리턴하십시오.
예를 들어 76543은 34567을 반환합니다.
단일 정수 값 인수를 허용하는 함수 (또는 동등한 서브 프로그램)를 작성하고 인수의 10 자리 숫자의 순서를 반대로하여 찾은 (유사한 유형) 값을 리턴하십시오.
예를 들어 76543은 34567을 반환합니다.
답변:
‮n
n당신의 번호로 교체
Your search - . 어떤 문서와도 일치하지 않습니다.
data:text/html,&%238238;egnahcxEkcatS olleH
파이썬
int(str(76543)[::-1])
편집하다:
@gnibbler가 제안한 더 짧은 솔루션 :
int(`76543`[::-1])
또는 위의 내용이 명확하지 않은 경우 :
x=76543
int(`x`[::-1])
s[::-1]보다 빠른 속도''.join(reversed(s))
범용 (언어 불가지론 / 독립적 )
숫자 만 사용 하고 (숫자를 문자열로 변환 하지 마십시오 ) 특정 라이브러리 를 사용 하지 않으려는 경우 (모든 언어에 보편적 인) :
x = 76543 # or whatever is your number
y = 0
while x > 0:
y *= 10
y += ( x %10 )
x /= 10 # int division
이것은 파이썬이지만 수학 방법 일뿐이므로 모든 언어로 수행 할 수 있습니다.
mod에 %, 그것은 유효한 파이썬의)
y=y*10+x%10....
Kiril Kirov의 답변에서 영감을 얻었습니다. 나는 숫자를 뒤집는 수학적 특성에 대해 궁금해서 조금 조사하기로 결정했습니다.
일부 base에서 n - rev(n)자연수 의 차이 를 플로팅하면 다음 과 같은 패턴이 나타납니다 ( , for , 열로 감싸서 빨간색은 음수를 나타냅니다).nr(n - rev(n)) / (r - 1)r=10r

이 시퀀스는 다음과 같이 생성 될 수 있습니다 (의사 코드).
for i=1 to r:
output 0
for m=0, 1, …
for k=1 to (r-1):
for d=1 to r^m:
for i=0 to (r-1):
output (r-1) * (r+1)^m * (k - i)
이 값을 목록 / 배열에 저장 n - arr[n]하면의 반대 형식을 얻을 수 있습니다 n. 이제 수학적으로 "수학적으로 골프를 치기"위해서는 시퀀스에서 n : 번째 값을 제공하는 닫힌 형태의 표현이 이상적이므로 전체 작업을 해결하기위한 닫힌 형태의 표현을 가질 수 있습니다. 불행히도, 나는 그런 표현을 찾을 수 없었지만 가능할 것 같습니다. :(
수학적으로 호기심이 많은 코드 골프는 아니지만 위의 시퀀스에 닫힌 형식의 표현이 있으면 실제로 PL 골프 제출에 유용 할 수 있습니다.
f=read.reverse.show.(+0)
f=read.reverse.show.(+0)?
(+0): 합법적 인 사람! 비록 기술적으로 당신이 필요하지 않은 .(+0)로, 전혀를 f문제가 요구하는 것보다 더 많은 다형성 것 ( '유사 입력'결과를 반환 할 수있다). 나는 그 5자를 깎을 것이다.
x = 13456
x.to_s.reverse
.to_s.reverse.to_i사양을 준수 할 수 있습니다.
숫자를 문자열로 변환 한 다음 문자열을 뒤집은 다음 해당 문자열을 다시 숫자로 변환 할 수 있습니다. 이러한 종류의 기능은 모든 언어로 제공 될 수 있습니다. 더 수학적 방법을 찾고 있다면 다음과 같이 도움이 될 수 있습니다.
int n = 76543;
int r = 0;
while (n > 0) {
r *= 10;
r += n % 10;
n /= 10;
}
1111111119
`-1%~
스택에 인수를 사용하여 스택에 결과를 남깁니다. 나는 사양에서 "서브 프로그램"옵션을 이용하고 있습니다. 함수를 고집하면 스택에 4 문자가 더 남습니다.
{`-1%~}:r
`-1%~오히려 의미를 가져야한다고 생각합니다 `-1$~(그리고 나는 그렇게 말하기 위해 당신의 대답을 자유롭게 편집했습니다).
쉘 스크립팅에서 :
echo "your number"|rev
이것이 도움이 되었기를 바랍니다 :)
rev<<<yournumber. 예를 들어 rev<<<132(POSIX가 아닌 bash / zsh의 경우)
rev문제는이 말을하지 않습니다, 충분 이 함수가 될 수 있습니다. rev내장 함수가 아닌 경우에도 내장 함수와 비교할 수 있습니다.
늦었지만
⍎⌽⍞
기능을 고집한다면
⍎∘⌽∘⍕
Java에서 다음을 수행 할 수 있습니다. 이것은 String으로 변환하고 다시 수학적인 솔루션이 아닙니다.
public class test {
public static int reverseInt(int i) {
return Integer.valueOf((new StringBuffer(String.valueOf(i))).reverse().toString());
}
public static void main(String[] args) {
int i = 1234;
System.out.println("reverse("+i+") -> " + reverseInt(i));
}
}
(first(list(parse-integer(reverse(write-to-string '4279)))))
당신에게 9724를 얻을 것이다.
(first(list? parse-integer이미 숫자를 반환합니다.