Wielu z was mogło w pewnym momencie wchodzić w interakcje z ludźmi z Rosji w Internecie, a pewna ich część zauważyła nieco dziwną metodę wyrażania siebie.
na przykład удали игру нуб)))
tam, gdzie )))
zostały dodane w celu podkreślenia poprzedniego oświadczenia, pracowałem nad teorią, że stosunek )
„s” do reszty ciągu jest wprost proporcjonalny do wielkości domniemanego nacisku, jednak często trudno mi obliczyć stosunek w locie, ponieważ próbuję również poradzić sobie z mnóstwem nadużyć, dlatego chciałbym, aby możliwie najkrótszy kod pomógł mi obliczyć, jaki powinien być wynikowy łańcuch, dla wartości entuzjazmu od 0 do 500%, biorąc pod uwagę oryginał , nie entuzjastyczny ciąg znaków, to bardzo pomoże moim badaniom, ponieważ nie będę musiał pisać nieporęcznych skryptów za każdym razem, gdy chcę przetestować moją hipotezę.
Wyzwanie:
napisz pełny program lub funkcję, która, pod warunkiem dwóch argumentów, ciągu o nieznanej długości i liczby, w formacie liczb całkowitych (od 0 do 500) lub w formacie dziesiętnym (od 0 do 5, z 2 punktami dokładności) będzie
- powrót / wyświetlić oryginalny łańcuch, przyrostek liczby
)
„s - liczba zostanie obliczona jako stosunek liczby wejściowej do długości łańcucha.
- więc jeśli podano liczbę 200 lub 2,00, 200% ciągu musi być przyrostek jako
)
„s” - liczba nawiasów zaokrąglonych do miejsc dziesiętnych nie ma znaczenia.
- Skrypt jest wymagany do obsługi znaków ASCII do wydruku.
- musi obsługiwać tylko jeden wybrany format liczb wejściowych.
Przykłady:
"codegolf" 125 = codegolf))))))))))
"codegolf" 75 = codegolf))))))
"noob team omg" 0.5 = noob team omg))))))
"hi!" 4.99 = hi!)))))))))))))))
Przykładowy kod (PowerShell) (z wprowadzeniem dziesiętnym):
Function Get-RussianString ([string]$InputStr,[decimal]$Ratio){
$StrLen = $InputStr.Length
$SuffixCount = $StrLen * $Ratio
$Suffix = [string]::New(")",$SuffixCount)
return $InputStr + $Suffix
}
Get-RussianString "codegolf" 0.5
codegolf))))
To jest golf golfowy, więc wygrywa najkrótszy kod!
!
s, ale piszą je tak, jak są, nie jest to zbyt powszechne, ale jest dość kultowe.
)
to zmniejszona liczba emotikonów :)
. O ile mi wiadomo, używa się go bardzo często wśród młodych ludzi.
)
to nie nacisk, to po prostu buźka. O ile mi wiadomo, trudniej jest pisać w :
rosyjskim układzie klawiatury, dlatego uśmiechają się bez oczu.
:
na rosyjskim układzie (ЙЦУКЕН), jak ^
na QWERTY. Ale rzeczywiście )
jest to zmniejszona wersja :)
. O wiele łatwiej jest nacisnąć i przytrzymać Shift-0 niż wielokrotnie zmieniać klawisze.
)
nacisku jak!
? Czy to jakiś problem z kodowaniem?