Loading Now

PALINDEG

Xâu đối xứng là xâu đọc từ trái qua phải cũng giống như đọc từ phải qua trái, người ta định nghĩa bậc đối xứng của string, kí hiệu là deg(string) như sau:

  • Nếu string không phải là xâu đối xứng (hoặc có độ dài bằng 1) thì deg(string) = 0
  • Nếu string là xâu đối xứng, thì deg(string) được tính theo công thức:
                           deg(string) = 1 + deg(t)
    Trong đó, t là nửa trái của string theo định nghĩa:
    t = s[1..k]
    k = (length(string) + 1) div 2

Cho một xâu string. Hãy xác định bậc đối xứng của nó.

Ví dụ:

  • Với string = "z" thì deg(string) = 0.
  • Với string = "zo" thì deg(string) = 0.
  • Với string = "zoz" thì deg(string) = 1.
  • Với string = "zozzoz" thì deg(string) = 2.

Đầu vào/Đầu ra:

  • [Thời gian chạy] 0.5s với C++, 3s với Java và C#, 4s với Python, Go và JavaScript.
  • [Đầu vào] String
    1 ≤ s.length ≤ 10^9
  • [Đầu ra] Integer

Post Comment

Contact