Loading Now

perfectString

Một chuỗi hoàn hảo là một chuỗi gồm:

  • Chỉ chứa các kí tự: [“x”,”y”,”z”]
  • 2 ký tự liền kề không được giống nhau

Ví dụ: “xy”, “xyx”, “xyzx”, .. là chuỗi hoàn hảo. “xxy”, “yzz”, “xzxx”,.. là các chuỗi không hoàn hảo

Cho 2 số nguyên nk hãy viết hàm để trả về một chuỗi thỏa mản yêu cầu sau:

  • Chuỗi gồm n ký tự
  • Trả về chuỗi thứ k trong danh sách được sắp xếp theo thứ tự từ điển. Trả về chuỗi trống nếu không tồn tại vị trí k có độ dài n

Ví dụ:

  • Với n = 1 k = 2 thì perfect_string(n,k) = "y"

Giải thích: Ta sẽ có danh sách ký tự có độ dài n là: [“x”, “y”, “z”] và vị trí thứ 2 sẽ là "y"

  • Với n = 1k = 5 thì perfect_string(n,k) = ""

Giải thích: Ta sẽ có danh sách ký tự có độ dài n là: [“x”, “y”, “z”] và không tồn tại vị trí thứ 5 nên đầu ra sẽ bằng rỗng

  • Với n = 3 và  k = 2 thì perfect_string(n,k) = "xyz"

Giải thích: Ta sẽ có danh sách ký tự có độ dài n là: [“xyx”, “xyz”, “xzx”, “xzy”, “yxy”, “yxz”, “yzx”, “yzy”, “zxy”, “zxz”, “zyx”, “zyz”]

và vị trí thứ 2 sẽ là "xyz"

Đầu vào/Đầu ra

  • [Thời gian chạy] 0.5s đối với C++, 3s đối với Java và C#, 4s đối với Python, Go và Javascript
  • [Đầu vào] Integer k, n

1 ≤ n ≤ 20

1 ≤ k ≤ 1000

  • [Đầu ra] String

Chuỗi thỏa mản yêu cầu đề bài

Post Comment

Contact