Bạn được cấp một số nguyên không âm (cơ số 9) không âm gồm các chữ số từ 0 đến 8 như bình thường. Tuy nhiên, số chữ số trong số này (không có số 0 đứng đầu) là một hình vuông hoàn hảo.
Bởi vì điều này, số có thể được sắp xếp trong một lưới vuông (với thứ tự đọc vẫn được bảo tồn).
Ví dụ với 1480 (1125 cơ sở 10):
14
80
Bây giờ, hãy để mỗi chữ số trong một lưới không phải như vậy biểu thị một chuyển động đến một không gian lưới khác (với các điều kiện biên định kỳ ):
432
501
678
Điều này nói rằng
0 = stay still
1 = move right
2 = move right and up
3 = move up
...
8 = move right and down
Vì vậy, nếu trong lưới 1480 bạn bắt đầu ở số 4, thì bạn di chuyển lên (nhớ pbc) và sang trái số 8, có nghĩa là bạn di chuyển sang phải và quay lại số 4, bắt đầu một chu kỳ với giai đoạn 2.
Nói chung, quá trình này được tiếp tục cho đến khi bạn về 0 hoặc một chu kỳ được chú ý. (A 0 được coi là một chu kỳ với giai đoạn 1.)
Trong trường hợp 1480, khoảng thời gian cuối cùng đạt được tại mỗi trong số 4 chữ số bắt đầu 2 2 2 1
tương ứng.
Đối với lưới lớn hơn, các số này có thể lớn hơn 8, nhưng chúng ta vẫn có thể sử dụng chúng dưới dạng "chữ số" trong một số không phải là số mới (đơn giản là các hệ số của 9 ^ n như thể chúng là các chữ số):
2*9^3 + 2*9^2 + 2*9 + 1 = 1639 (base 10) = 2221 (base 9)
Chúng tôi sẽ gọi đây là sức mạnh của số không ban đầu. Vậy cường độ của 1480 là 1639 (cơ sở 10) hoặc tương đương là 2221 (cơ sở 9).
Thử thách
Viết chương trình ngắn nhất cho biết cường độ của một số không phải lớn hơn, nhỏ hơn hoặc bằng chính số đó. (Bạn không nhất thiết phải tính toán sức mạnh.)
Đầu vào sẽ là một số không âm không âm có chứa một số chữ số vuông (và không có số 0 đứng đầu bên cạnh trường hợp đặc biệt là 0). Nó nên đến từ dòng lệnh hoặc stdin.
Đầu ra sẽ đi đến thiết bị xuất chuẩn như:
G if the strength is larger than the original number (example: 1480 -> strength = 2221)
E if the strength is equal to the original number (example: 1 -> strength = 1)
L if the strength is less than the original number (example: 5 -> strength = 1)
Thử thách tiền thưởng thú vị:
Đầu vào cao nhất bạn có thể tìm thấy bằng với sức mạnh của nó là gì? (Có giới hạn không?)