L'obiettivo
Questa è una sfida semplice. L'input è una singola stringa non vuota, contenente solo cifre 0123456789
e hash #
. Conterrà esattamente una serie di cifre, che codifica un numero intero non negativo e può avvolgere la fine della stringa e almeno una #
. L'intero può avere zero iniziali. Ad esempio, ##44##
, 013####
e 23###1
sono validi input, mentre ###
, 0099
e #4#4
non lo sono.
Il tuo compito è estrarre il numero intero n
dalla stringa e generare i n
passaggi ruotati della stringa verso destra.
Esempi
- L'ingresso
#1##
deve essere ruotato di 1 passo verso destra, quindi l'uscita corretta è##1#
. - L'ingresso
#026###
deve essere ruotato di 26 passi verso destra, poiché lo 0 iniziale viene ignorato. L'output corretto è26####0
. - L'input
1####2
contiene l'intero 21 avvolto sull'estremità, quindi dovrebbe essere ruotato di 21 passi verso destra. L'output corretto è##21##
.
Regole e punteggio
È possibile scrivere un programma completo o una funzione. Vince il conteggio di byte più basso e non sono consentite scappatoie standard.
Puoi presumere che il numero si n
adatti al int
tipo standard della tua lingua. Al contrario, se quel int
tipo standard implementa numeri interi di precisione arbitraria, è necessario supportare (in teoria) un valore arbitrariamente grande n
.
Casi test
#1## -> ##1#
##4## -> #4###
1####1 -> ####11
1####2 -> ##21##
#026### -> 26####0
#000### -> #000###
###82399 -> ##82399#
51379#97 -> #9751379
#98##### -> ###98###
#######4## -> #4########
60752#1183 -> 8360752#11
####99366800## -> 366800######99
########9##### -> ###9##########
91#####515694837 -> 1#####5156948379
###6114558###### -> #6114558########
######219088736090042#### -> 9088736090042##########21
#46055080150577874656291186550000138168########### -> 0138168############4605508015057787465629118655000
568375993099127531613012513406622393034741346840434468680494753262730615610086255892915828812820699971764142551702608639695081452206500085233149468399533981039485419872101852######################3680 -> 99533981039485419872101852######################36805683759930991275316130125134066223930347413468404344686804947532627306156100862558929158288128206999717641425517026086396950814522065000852331494683
n
adattano al int
tipo nativo della tua lingua (che può essere di precisione arbitraria). Aggiornerò il testo della sfida più tardi.
1234
?