Nhiệm vụ của bạn là, như tiêu đề kín đáo gợi ý, tạo ra một hình ảnh động mờ của một từ biến thành một từ thứ hai cho bạn thực sự.
Chính xác thì "hoạt hình mờ" này bạn có thể yêu cầu là gì?
Để tạo một hiệu ứng mờ dần (ly xấu) ngoạn mục, bạn lấy hai chuỗi sẽ chỉ chứa các ký tự ASCII có thể in được. Bạn bắt đầu bằng cách in chuỗi bắt đầu của bạn (đầu tiên của hai). Sau đó, bạn chọn ngẫu nhiên một ký tự trong từ gốc và thay đổi nó thành ký tự tương ứng trong từ bạn muốn tạo hiệu ứng. Khi các từ có độ dài không bằng nhau, bạn phải đệm chúng bằng khoảng trắng.
Bạn tiếp tục làm điều này cho đến khi tất cả các nhân vật đã được thay đổi, nhưng bạn sẽ không thay đổi nhân vật ở một chỉ số nhất định nhiều lần . Dưới đây là một ví dụ i / o:
Hey -> Peeps
Hey # original string
Hey s # replace char at index 4
Hey s # replace char at index 1
Pey s # replace char at index 0
Pee s # replace char at index 2
Peeps # replace char at index 3
Bạn phải viết một hàm hoặc chương trình đầy đủ thay đổi một chữ cái và sau đó in chuỗi mới với gia số của một giây. Các định dạng đầu vào là lỏng lẻo, nhưng định dạng đầu ra là nghiêm ngặt.
Đây là mã golf , vì vậy mã ngắn nhất tính bằng byte thắng.
Một số trường hợp thử nghiệm (Mẫu init -> final:):
Stringy -> Blingy
Banana -> Republic
United -> States
Make America -> Tissue box
I like walls -> I have small hands
Hello, -> world!
Tham chiếu thực hiện trong Python 2:
import random
import time
def F(c,f):
print c # before we do stuff
if len(c)>len(f):f+=" "*(len(c)-len(f)) # add padding part 1
if len(f)>len(c):c+=" "*(len(f)-len(c)) # add padding part 2
c, f = list(c), list(f)
ai = [i for i in range(len(c))] # a list for keeping track
while len(ai) > 0: # of available indices
time.sleep(1) # 1 second pause...
i = ai.pop(random.randint(0,len(ai)-1)) # get a random index and remove
c[i] = f[i] # it from the list
print ''.join(c) # print the new string