Robot của tôi đã bị ngắn mạch bằng cách nào đó và ngẫu nhiên chạy đi đâu đó từ phòng thí nghiệm của tôi!
May mắn thay, bất cứ khi nào anh ta làm điều này, trình tự tắt máy của anh ta bắt đầu, cho anh ta đủ thời gian để quay ngẫu nhiên và chạy theo hướng mà nó phải đối mặt trong năm vòng trước khi anh ta tắt. Chức năng con quay hồi chuyển và gia tốc kế của anh ta vẫn đang chuyển dữ liệu trở lại phòng thí nghiệm trong khi anh ta vẫn đang bật.
Ví dụ, dữ liệu sẽ luôn ở dạng năm bộ gồm hai số.
12:234,-135:47,-68:230,140:324,127,87
Nhiệm vụ của bạn, chơi golf là để a) mô phỏng chạy điên cuồng của robot và biến chuỗi bằng cách hiển thị năm bộ các số theo hình thức a1:d1,a2:d2,a3:d3,a4:d4,a5:d5
nơi a
(n) là góc chiều kim đồng hồ (tính theo độ) sao cho -179<=a<=+180
rằng robot sẽ chuyển từ tiêu đề hiện tại của nó ( ban đầu nó ở tiêu đề 0 trước khi nó chạy amok và quay lần đầu tiên) và d
(n) là khoảng cách tính theo feet mà nó đã chạy trước khi thay đổi tiêu đề tiếp theo giống như 0<=d<=500
bàn chân đó ; và b) Một tiêu đề được tính toán từ phòng thí nghiệm (cũng đang đối mặt với một tiêu đề bằng 0), khoảng cách tính theo feet (độ chính xác lên đến 3 chữ số thập phân được khuyến khích mạnh mẽ, -5 byte nếu bạn làm) và tiêu đề định hướng (tính theo độ) nơi robot của tôi đang đối mặt khi nó đã tắt.
Ví dụ dễ dàng:
Data: 0:1,45:1,90:1,90:1,90:1
Heading: 0
Distance: 1
Orientation: -45
Các lượt và khoảng cách ngẫu nhiên chỉ có vậy, ngẫu nhiên. Không có giá trị được đặt nào được mã hóa cứng, chúng ta phải thấy tính ngẫu nhiên trong hành động trong mã.
Hạn chế đối với tính ngẫu nhiên: Không có tham chiếu dựa trên đồng hồ hoặc ngày, chúng ta cần xem một random
tham chiếu gốc trong mã. Bất cứ khi nào bạn chạy mã này, tính ngẫu nhiên phải thể hiện chính nó với khả năng hiển thị 1 trong 360 góc quay có thể có với mỗi vòng quay. Vì vậy, robot có thể quay -36 độ ở một lượt và có thể quay +57 độ tiếp theo, tiếp theo là một góc khác +2 độ khác ở góc quay -16 độ và lượt cuối cùng là +42 độ ở lượt cuối cùng. Phải có ít nhất 360 giá trị riêng biệt (bao gồm từ -179 đến +180 độ) với mỗi thế hệ góc ngẫu nhiên.
Hạn chế đối với chạy khoảng cách: Tương tự như vậy, có 501 khoảng cách có thể robot có thể chạy, (bao gồm từ 0 đến 500 feet), vì vậy tôi hy vọng tính ngẫu nhiên cũng có sẵn khi xác định khoảng cách chạy của robot. Về mặt lý thuyết, robot có thể chạy 45, 117, 364, 27 và 6 feet với mỗi vòng tương ứng của nó ...
Dữ liệu được cung cấp cho bạn sẽ luôn ở các giá trị số nguyên ... robot sẽ chuyển theo phạm vi số nguyên độ và sẽ chạy trong phạm vi số nguyên khoảng cách. Tuy nhiên, các giá trị đầu ra sẽ là ...
Đây là môn đánh gôn. Mã ngắn nhất sẽ thắng ... Bây giờ hãy đi tìm robot của tôi!
PS: Liên quan đến "Độ chính xác lên đến 3 chữ số thập phân" của tôi, nếu bạn có thể cung cấp tiêu đề (tính theo độ, đến TỐI THIỂU 3 chữ số thập phân) và khoảng cách tính theo feet (cũng chính xác đến TỐI THIỂU 3 chữ số thập phân) sẽ nhận được phần thưởng -5 byte).
-180 < a <= +180
làm<
dấu hiệu cho chính nó ít hơn nhưng không bao gồm AFAIK ...