//
you're reading...
Bài tập huấn luyện

Bài tập huấn luyện: Hàm A

 

Cho xâu S gồm N chữ cái Latin. Người ta định nghĩa hàm A(i) của i kí tự đầu của xâu S là giá trị lớn nhất của k sao cho 2 xâu sau bằng nhau:

S1 = S[1]+S[2]+S[3]+…+S[k]

S2 = S[i]+S[i-1]+S[i-2]+…+S[i-k+1]

(Với S[i] là kí tự thứ i của xâu S, dấu “+” giữa 2 kí tự thể hiện các kí tự này được nối liền với nhau)

Hãy viết chương trình tính giá trị của hàm A của một xâu S với mọi giá trị của i từ 1 tới N.

InputAFUNC.INP

  • Dòng thứ nhất ghi số nguyên dương N là độ dài của xâu S.
  • Dòng thứ 2 ghi xâu S.

Output:            AFUNC.OUT

Ghi ra các giá trị A(1), A(2), .., A(N) trên 1 dòng.

Giới hạn:

  • 1 ≤ N ≤ 200000.
  • Thời gian: 1 s/test
  • Bộ nhớ: 4 MB

Ví dụ:

AFUNC.INP AFUNC.OUT
5

aabaa

1 2 0 1 5
Advertisements

About pascalteacher

Trang thông tin Toán học và Tin học

Thảo luận

Không có bình luận

Trả lời

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

Các tác giả

Chuyên mục

Tháng Mười 2016
H B T N S B C
« Th9   Th11 »
 12
3456789
10111213141516
17181920212223
24252627282930
31  

NCT Computer

Flickr Photos

Pine Martens

King

Alfred Nicholas Memorial Gardens 2017-03-18 (5D_32A6187)

More Photos

Thống kê

  • 115,063 lượt xem

pascalteacher.nct@gmail.com


Trang huấn luyện học sinh giỏi Tin học

%d bloggers like this: