HackDream Orange 07-D: Tên sản phẩm

Xem PDF

Nộp bài


Điểm: 100 (thành phần)
Thời gian: 1.0s
Python 3 3.0s
Bộ nhớ: 256M
Input: bàn phím
Output: màn hình

Tác giả:
Dạng bài

Orange vừa tốt nghiệp chuyên ngành "Kỹ thuật in" bậc đại học và bắt đầu quá trình thực tập. Anh được nhận vào một tập đoàn lớn với mức đãi ngộ rất hấp dẫn. Tuy nhiên, thử thách đầu tiên của công ty giao cho cậu đã khiến cậu gặp gặp không ít khó khăn và bao trăn trở mà vẫn không thể vượt qua được.

Công ty cần thực hiện in tên sản phẩm lên các bao bì. Một tến sản phẩm được coi là hợp lệ nếu như nó chỉ chứa toàn các chữ cái in thường và phải là một xâu đối xứng. Tuy nhiên, sau khi thực hiện in thì đã phát hiện ra một tên sản phẩm không được coi là hợp lệ và hiện tại Orange cần sử dụng một chiếc máy để sửa lại nó.

Chiếc máy của công ty sử dụng một cần gạt, có thể gạt sang trái, sang phải, lên trên, và xuống dưới. Ban đầu, chiếc máy chiếu vào một vị trí ~p~ trong tên sản phẩm. Gạt cần sang bên trái và bên phải sẽ giúp Orange di chuyển vị trí chiếu của chiếc máy sang các vị trí khác. Chiếc máy là một vòng tuần hoàn, nghĩa là khi Orange gạt cần sang bên trái thì chiếc máy sẽ chiếu sang vị trí ~i - 1~ nếu ~i > 1~ hoặc tới vị trí cuối cùng nếu ~ i = 1~. Tương tự nếu gạt cần sang bên phải (nếu máy đang chiếu ở vị trí cuối cùng của xâu thì sẽ chuyển sang vị trí đầu).

Khi Orange gạt cần lên trên, chữ cái tại vị trí chiếu sẽ biến thành chữ cái tiếp theo trong bảng chữ cái (và đương nhiên bảng chữ cái cũng là một vòng tuần hoàn, ví dụ như chữ 'z' thì sẽ biến thành chữ 'a'). Tương tự với gạt xuống dưới thì chữ cái tại vị trí chiếu sẽ biến thành chữ cái trước nó trong bảng chữ cái.

Yêu cầu

Ban đầu, chiếc máy đang chiếu tại vị trí ~p~. Hãy giúp Orange tìm số thao tác tối thiếu để có thể biến tên sản phẩm đang bị lỗi này thành một tên hợp lệ.

Input

  • Dòng đầu tiên chứa một tên sản phẩm cần sửa lại, gồm các chữ cái in thường (Độ dài của tên sản phẩm không quá ~10^{5}~);
  • Dòng thứ hai chứa duy nhất một số nguyên ~p~ là vị trí chữ cái mà chiếc máy đang chiếu vào.

Output

  • Gồm một số nguyên duy nhất là số thao tác ít nhất (số lần gạt cần) mà Orange cần sử dụng để biến đổi tên sản phẩm thành một tên hợp lệ.

Sample Input

abcd
1

Sample Output

5

Giải thích

Ban đầu, tên sản phẩm là abcd (Chiếc máy đang ở vị trí được bôi đậm).

abcd ~\xrightarrow{\text{lên}}~ bbcd ~\xrightarrow{\text{lên}}~ cbcd ~\xrightarrow{\text{lên}}~ dbcd ~\xrightarrow{\text{phải}}~ dbcd ~\xrightarrow{\text{lên}}~ dccd.

Nhận được xâu dccd là một tên sản phẩm phù hợp. Và tốn 5 thao tác.

Subtask

  • Có 15% số test ứng với 15% số điểm có ~n \leq 4~;
  • Có 20% số test ứng với 20% số điểm mà tên sản phẩm chỉ chứa 2 chữ cái khác nhau;
  • Có 25% số test ứng với 25% số điểm có ~p = 1~;
  • 40% số test còn lại tương ứng với 40% số điểm không có giới hạn gì thêm.

Bình luận đầu tiên

Bình luận

Không có bình luận nào.