Số nguyên tố toàn diện (Khánh Hòa 2024)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: SNTOTD.INP
  • Tệp ra: SNTOTD.OUT
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

Tổng phân thức (Đắk Lắk 2024)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: Bàn phím
  • Tệp ra: Màn hình
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

Dịch UCLN (Bà Rịa Vũng Tàu 2023)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: BAI2.INP
  • Tệp ra: BAI2.OUT
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

TLEOJ Contest #10 - Cầu thủ

tourist

TLE CHAMPIONS LEAGUE là giải đấu danh giá và lâu đời. Nhiều năm về trước, TLE CHAMPIONS LEAGUE được tổ chức lần đầu vào những năm 20 của thế kỉ XXI. Mùa giải đầu tiên với sự đăng cai của Sunlight đã chứng kiến những cuộc lội ngược dòng ngoại mục. Năm đó, đội bóng Pre-MU không tham dự vì lí do chưa mua được bản quyền. Năm nay, dưới sự chèo lái của huấn luyện viên đại tài tourist với các cầu thủ như Maguire, Ohaha,... sẽ mang đến bất ngờ cho giải đấu năm tới nhưng Pre-MU đang gặp phải 1 vấn đề như sau.

Đội bóng Pre-MU của tourist làm huấn luyện viên có n cầu thủ, cầu thủ thứ i có chiều cao là A_i. Trong quá trình chuẩn bị cho giải TLE CHAMPIONS LEAGUE tổ chức vào năm sau, tourist nhận thấy:

  • Trình độ huấn luyện của mình là S.
  • Khả năng tấu hài của đội bóng sẽ là S\times |A_i-A_{i-1}| với mọi 2\le i\le n.

Vì tourist không kịp chuẩn bị cầu thủ mới để khả năng tấu hài là nhỏ nhất nên đến nhờ jiangly. Biết vậy, jiangly đã mang ra lọ Calcium gia truyền tinh khiết 69\% để buff chiều cao cho các cầu thủ:

  • Nếu cầu thủ cao thêm k đơn vị thì khả năng tấu hài của cả đội sẽ tăng thêm k^2 đơn vị.

Được lọ thuốc gia truyền này, tourist về để dùng cho các cầu thủ của mình. Hãy giúp tourist sử dụng thuốc như thế nào để khả năng tấu hài là nhỏ nhất. Và tất nhiên mỗi cầu thủ chỉ được dùng loại thuốc 1 lần.

Input, output và Subtask

Input

  • Dòng đầu tiên gồm 2 số nguyên n và S (n\le 10^4,S\le 10^6).
  • Dòng thứ hai là chiều cao của n cây A_1,A_2,A_3,...,A_n (A_i\le 10^3).

Output

  • In ra một số duy nhất là độ tấu hài nhỏ nhất có thể. Vì kết quả có thể rất lớn nên hãy xuất kết quả sau khi mod\ 10^9+7.

Example

Input

6 3
2 4 6 3 1 7

Output

35
Note
  • Một phương án tối ưu là cho cầu thủ thứ 1 thêm 1 đơn vị, cầu thủ thứ 5 thêm 2 đơn vị. Khi đó chiều cao các cầu thủ sẽ là (3,4,6,3,3,7).
  • Độ tấu hài sẽ là 3\times (1+2+3+0+4)+1+4=35 là nhỏ nhất.

Giai đoạn tiến bộ nhất (Hải Phòng 2026)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: stdin
  • Tệp ra: stdout
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

Đồng xu

Sunlight

Cho một số nguyên dương n và k số nguyên dương a_1,a_2,\dots,a_k ≤ 2n . Người ta bày sẵn 2n đồng xu trên bàn sao cho có đúng n đồng xu ngửa và n đồng xu sấp. Với mỗi thao tác, bạn có thể chọn một số bất kỳ trong tập a, giả sử số bạn chọn là t. Bạn sẽ lấy các đồng xu liên tiếp (có thể không lấy đồng xu nào) có cùng trạng thái (cùng sấp hoặc cùng ngửa), sau đó chuyển chúng ra đầu dãy. Ví dụ:
Với trạng thái các đồng xu được đặt như sau: AABBBBAA (ký hiệu A là mặt ngửa và B là mặt sấp) và t = 4, ta có thể thu được các trạng thái sau:

  • BBBAABAA (chuyển các đồng xu 3, 4, 5 lên đầu).
  • BBBBAAAA (chuyển các đồng xu 3, 4, 5, 6 lên đầu).
  • ...

Hỏi rằng với dãy a đã cho, tồn tại hay không một cách sắp xếp các đồng xu sao cho không thể có trường hợp n đồng xu đầu tiên có cùng một trạng thái sau một số hữu hạn các thao tác?

Input, Output và Subtasks:

Input:
  • Dòng đầu tiên gồm hai số nguyên dương n và k.
  • Dòng tiếp theo gồm các số nguyên dương miêu tả dãy a.
Output:

In ra YES nếu tồn tại một cách sắp xếp các đồng xu sao cho không thể khiến n đồng xu đầu tiên có cùng một trạng thái sau một số hữu hạn các thao tác, và NO trong trường hợp ngược lại.

Subtasks:

n,a_i,k\leq 2.10^6; k,a_i\leq 2n

Sample:

Input:
4 4
1 2 3 4
Output:
NO

Sample 2:

Input:
4 2
1 2
Output:
YES
Notes:

Tồn tại cách sắp xếp ABABABAB.

TLEoj Cup Final Day 1 - Cặp số độc lập

Sunlight

Một cặp số nguyên dương (i, j) được gọi là độc lập với nhau khi và chỉ khi i\ \&\ j = 0, trong đó \& là phép toán thao tác bit AND.

Bạn được cho một dãy số nguyên dương a. Nhiệm vụ của bạn là đếm xem trong dãy có bao nhiêu cặp số độc lập.

Input, Output và Subtask
Input (IPN.inp)
  • Dòng đầu tiên gồm một số nguyên dương n - số phần tử của dãy (n \le 10^5).
  • Dòng tiếp theo gồm n số nguyên dương a_i là các giá trị của dãy (a_i \le 10^9).
Output (IPN.out)
  • Một dòng duy nhất là số cặp số độc lập trong dãy.
Subtask
  • 30\% số điểm có n \le 10^4.
  • 30\% số điểm khác có a_i \le 10^4.
  • 40\% số điểm còn lại không có giới hạn gì thêm.
Sample 1
Input (IPN.inp)
8
1 2 3 4 5 6 7 8
Output (IPN.out)
13
Notes

Các cặp số độc lập là (x, 8) với mọi x < 8, (x, 4) với mọi x < 4, (1, 2), (2, 5), (1, 6)

Số có 3 ước (Bắc Giang 2025)

Đề bài: Đề thi được đính kèm trong tệp PDF bên dưới.

  • Tệp vào: BAI2.INP
  • Tệp ra: BAI2.OUT
  • Thời gian chạy: 1.0s
  • Bộ nhớ: 1024MB

TLE-oj Cup Round 8 - Truy vấn tổng

Sunlight

Cho một dãy a gồm n phần tử. Bạn phải thực hiện q truy vấn, mỗi truy vấn yêu cầu bạn phải tìm số r lớn nhất sao cho r \le n và (\Sigma^{i \le r}_{i = l}(a_i \times [u \le a_i \le v])) \le k. Trong đó:

  • \Sigma^{i \le r}_{i = l} c_i là tổng các giá trị c_i mọi trường hợp i từ l đến r.
  • [u \le a_i \le v] là hàm chân lý, trả về 1 (true) khi và chỉ khi u \le a_i \le v và trả về 0 (false) trong các trường hợp còn lại.

Hay nói cách khác, bạn cần tìm giá trị r lớn nhất sao cho đoạn mã giả sau trả về một giá trị s \le k (lưu ý: r có thể bằng l - 1):

gán s bằng 0

với mọi i từ l đến r:
    nếu u <= a_i <= v:
        tăng s lên a_i

trả về s

Input, Output và Subtasks

Input: (QUERYSUM.inp)
  • Dòng đầu tiên gồm hai số nguyên dương n, q. (n, q \le 100000)
  • Dòng thứ hai gồm các số nguyên a_1, a_2, ..., a_n. (1 \le a_i \le 10^9).
  • q dòng tiếp theo, mỗi dòng gồm 4 số nguyên dương l, u, v, k. (1 \le l \le n, 1 \le u \le v \le 10^9, 1 \le k \le 10^9)
Output: (QUERYSUM.out)
  • In ra kết quả của q truy vấn trên q dòng, mỗi dòng là một truy vấn.
Subtasks
  • Subtask 1 (15\%): u = 1, v = 10^9 và k bằng nhau qua mọi truy vấn.
  • Subtask 2 (15\%): n \le 1000.
  • Subtask 3 (15\%): a_i \le 500.
  • Subtask 4 (15\%): v - u \le 5.
  • Subtask 5 (20\%): u = 1.
  • Subtask 6 (20\%): Không có giới hạn gì thêm.

Sample

Input (QUERYSUM.inp)
7 3
4 6 8 2 10 5 1
4 1 5 7
1 2 3 5
1 1 10 15
Output (QUERYSUM.out)
6
7
2
Note
  • Truy vấn đầu tiên: Tìm được r tối đa bằng 6, trong đó có a_4 = 2, a_5 = 5 là số duy nhất thuộc đoạn [1, 5], do đó tổng giá trị là 7. Không thể có r = 7 vì lúc đó tổng giá trị sẽ là 8 do cũng có a_7 thuộc đoạn [1, 5].
  • Truy vấn thứ hai: Tìm được r = 7. Trong đó có số a_4 = 2 thuộc đoạn [2, 3], do đó tổng giá trị là 2 bé hơn k.

Số đẹp (TS10 TH 2023)

Sunlight

Số đẹp là số có tổng bình phương các chữ số của nó (trong dạng biểu diễn thập phân) là một số nguyên tố. Ví dụ: 23 là một số đẹp vì 2^2+3^2=13 là một số nguyên tố.

Dãy các số đẹp lần lượt là: 11,12,14,16,21,23,25,27,32,38,\dots. Các số đẹp được đánh số thứ tự tăng dần theo giá trị bắt đầu số thứ nhất là 11, số thứ hai là 12, ..., số thứ mười là 38

Yêu cầu: Cho số nguyên dương N. Hãy tìm số đẹp thứ N

Input, Output và Subtasks

Input: (CAU2.INP)
  • Chứa duy nhất một số nguyên dương N (1\le N\le 10000)
Output: (CAU2.OUT)
  • Số đẹp thứ N
Subtasks
  • Subtask 1 (70\%): N\le 10.
  • Subtask 2 (30\%): Không có giới hạn gì thêm.

Sample

Input (CAU2.INP)
1
Output (CAU2.OUT)
11

Sample

Input (CAU2.INP)
6
Output (CAU2.OUT)
23

Cây tìm kiếm nhị phân tối ưu

haiender288

Cây nhị phân tìm kiếm (Binary Search Tree – BST) trên tập n khóa số nguyên là một cây nhị phân thỏa mãn: Mỗi nút chứa đúng một khóa và khóa trong một nút lớn hơn mọi khóa trong nhánh con trái và nhỏ hơn mọi khóa trong nhánh con phải. Có nhiều cấu trúc BST để biểu diễn một tập các khóa. Như hình dưới đây là hai BST biểu diễn tập các khóa \{1,2,3,4,5,6\}.

Quá trình tìm kiếm một giá trị x trên BST thực hiện như sau: Bắt đầu từ nút gốc, tại mỗi bước, x được so sánh với khóa tại nút đang đứng (y):

  • Nếu x=y, quá trình tìm kiếm kết thúc, kết luận x có trong BST
  • Nếu x<y, đi sang nhánh con trái và quá trình tìm kiếm tiếp tục trong cây con trái bằng cách tương tự
  • Nếu x>y, đi sang nhánh con phải và quá trình tìm kiếm tiếp tục trong cây con phải bằng cách tương tự

Nếu tại một bước nào đó, thuật toán không thể đi tiếp được theo luật trên, quá trình tìm kiếm dừng và kết luận x không có trong BST.
Chi phí một phép tìm kiếm giá trị x bằng số phép so sánh khóa được thực hiện trong thuật toán. Như ở hình trên, để tìm khóa 3 trong cây (a) ta cần 3 phép so sánh trong khi đó để tìm khóa 3 trong cây (b) ta chỉ cần 2 phép so sánh.
Yêu cầu: Cho n khóa đánh số từ 1 tới n theo thứ tự tăng dần của các khóa, biết rằng người ta thực hiện c_i lần phép tìm kiếm khóa i trên cấu trúc BST biểu diễn tập khóa này (\forall i = 1,2,...,n). Hãy tìm cấu trúc BST sao cho tổng chi phí các phép tìm kiếm là nhỏ nhất.

Input, Output

Input: (OPTBST.inp)
  • Dòng 1 chứa số nguyên dương n\leq 2000
  • Dòng 2 chứa n số nguyên không âm c_1,c_2,...,c_n cách nhau bởi dấu cách (\forall i: c_i\leq 10^9)
Output: (OPTBST.out)
  • Ghi ra một số nguyên duy nhất là tổng chi phí (tính bằng số phép so sánh khóa được thực hiện) trên cấu trúc BST tìm được

Sample

Input (OPTBST.inp)
6
4 9 5 1 3 2 
Output (OPTBST.out)
48

Bức tranh tường

Sunlight

Thành muốn vẽ lên N bức tường liên tiếp nhau. Mỗi bức tường có một giá trị biểu thị độ đẹp nếu được vẽ lên bức tường đó đó. Thế nhưng các bức tường lại bắt đầu bị sụp đổ dần sau những trận lũ lụt gần đây. Vì vậy Thành sẽ vừa vẽ nhanh vừa gia cố bức tường được vẽ đó để nó không bị sụp đổ.

Vào đầu mỗi ngày, Thành sẽ vẽ lên một trong N bức tường. Ngày đầu tiên Thành có thể chọn bất kỳ bức tường nào. Vào các ngày tiếp theo Thành cần vẽ vào bức tường kế tiếp một bức tường đã vẽ. Vào cuối mỗi ngày, một bức tường bị đổ. Bức tường bị đổ luôn là bức tường chưa được vẽ lên và chỉ kề với duy nhất một bức tường khác.

Tổng độ đẹp cuối cùng nhận được là tổng độ đẹp các bức tường mà Thành vẽ lên. Thành mong muốn tìm cách vẽ là dù những bức tường nào bị đổ đi chăng nữa thì tổng độ đẹp cuối cùng tối thiểu là B.

Yêu cầu: Hãy giúp Thành tìm được giá trị B lớn nhất có thể.

Input

Dòng đầu tiên ghi duy nhất một số nguyên T≤5 là số lượng trường hợp test. Mỗi nhóm dòng trong số T nhóm dòng sau có cấu trúc như sau:

  • Dòng thứ nhất gồm một số nguyên: N.
  • Dòng thứ hai chứa một xâu gồm N chữ số trong khoảng từ 0 đến 9, chữ số thứ i biểu thị độ đẹp của bức tường thứ i nếu được vẽ lên.

Output

  • Ghi ra T dòng, mỗi dòng ghi một số nguyên là giá trị B lớn nhất tìm được.

Scoring

  • Subtask #1 (50\% số điểm): 2≤N≤100.
  • Subtask #2 (50\% số điểm): 2≤N≤10^6.
Sample
Input
1
3
535
Output
8
Note

Thành bắt đầu vẽ lên bức tường thứ 2 với độ đẹp bằng 3. Dù cuối ngày bức tường 1 hay bức tường 3 bị đổ thì ngày hôm sau Thành vẫn có thể vẽ lên bức tường còn lại để đạt tổng độ đẹp lớn nhất có thể bằng 8.

TLEOJ Contest #14 - Pride Paths

kitngao

Có ai ở đây biết tháng 6 này là tháng dành cho người thuộc nhóm \text{LGBT+} không? Giờ thì bạn biết rồi đấy.
Là một con người theo dõi xã hội phương Tây trong nhiều năm, đó cũng là một phần vinh dự của tôi khi được làm một trong những khán giả xem những người thuộc nhóm \text{LGBT+} diễn hề trong những ngày này. Và có cách gì tốt hơn khi làm điều đó khi gắn nó vào một thứ không liên quan gì tới tháng này nhỉ?

Cho một đồ thị gồm n đỉnh và m cạnh vô hướng, cạnh thứ i nối hai đỉnh u_i và v_i.

Đỉnh thứ i chỉ mang đúng một màu, được chọn từ 26 mã màu có sẵn có thể tô lên đồ thị, được đánh dấu từ A đến Z.

Nhận thấy lá cờ mà nhóm \text{LGBT+} vẽ ra cho từng nhóm người có ba dải màu trên từng lá cờ không? Cho một bộ ba mã màu khác nhau z_1 \ne z_2 \ne z_3, tạo thành một xâu Z, cũng như cách lá cờ đó được tô màu vậy. Xác định xem có tồn tại một tập hợp các điểm a_1, a_2 ,a_3 ,..., a_{k - 1}, a_k với chỉ số khác nhau đôi một thỏa mãn rằng:

  • Trong đồ thị con chỉ chứa các đỉnh a_1, a_2, ..., a_{k - 1}, a_k và các cạnh nối giữa hai đỉnh bất kì nằm trong tập này, tồn tại ít nhất một cách di chuyển trên đồ thị đó giữa hai cặp đỉnh bất kì.
  • Màu được tô ở đỉnh a_i chỉ có thể là z_1 hoặc z_2 hoặc z_3, với mọi 1 \le i \le k.
  • Mỗi màu trong số ba màu z_1, z_2, z_3 phải được tô lên ít nhất một trong số k điểm trong tập.

\text{Input} PPS.inp

  • Dòng một gồm ba số n, m (1 \le n \le 10^5; n - 1 \le m \le \text{min}⁡(5*10^5,\frac{n(n-1)}{2}), thể hiện số lượng đỉnh và số lượng cạnh của đồ thị, và q (1 \le q \le 15600), thể hiện số lượng truy vấn.
  • Dòng thứ hai gồm một xâu S được đánh số từ 1 đến n, chỉ gồm các kí tự \text{Latin} hoa, với S[i] thể hiện mã màu của đỉnh thứ i (với 1 \le i \le n).
  • m dòng tiếp theo, dòng thứ i gồm hai số u_i, v_i (1 \le u_i \ne v_i \le n), thể hiện rằng tồn tại một cạnh hai chiều nối giữa hai đỉnh u_i và v_i trong đồ thị.
  • q dòng cuối cùng, mỗi dòng gồm một xâu kí tự Z có đúng ba kí tự \text{Latin} hoa, thể hiện một truy vấn. Xâu Z đảm bảo rằng z_1 \ne z_2 \ne z_3.
  • Dữ liệu trong \text{Input} được đảm bảo rằng giữa hai điểm có không quá một cạnh nối giữa chúng và tồn tại ít nhất một cách di chuyển giữa một điểm bất kì tới điểm còn lại.

\text{Output} PPS.out

  • Với mỗi truy vấn, in ra \text{YES} / \text{NO} đối với câu hỏi trên đề với xâu kí tự Z của mỗi truy vấn.

\text{Scoring}

  • Subtask \text{#}1 (50\% số điểm): n \le 26; các S[i] khác nhau đôi một.
  • Subtask \text{#}2 (30\% số điểm): m = n - 1.
  • Subtask \text{#}3 (20\% số điểm): Không có điều kiện gì thêm.

\text{Examples}

\text{Test #}1

\text{Input}

6 7 3
ABDEBC
1 2
5 3
1 3
2 3
5 2
4 2
5 6
ABC
AEC
AZC

\text{Output}

YES
NO
NO
\text{Explanations}

Ở testcase \text{#}2 và \text{#}3, không tồn tại một bộ a_i phù hợp.
Ở testcase \text{#}1, bộ a_i phù hợp và duy nhất phù hợp là [1; 2; 5; 6].

Bộ đỉnh này thỏa mãn vì tồn tại một cách di chuyển giữa các cặp đỉnh (1; 2), (1; 5), (1; 6), (2; 5), (2; 6), (5; 6), và màu được tô ở bốn đỉnh này là \text{A}, \text{B} (ở đỉnh 2 và 5), và \text{C}.

Kế hoạch luyện tập (TS10 TH 2023)

Sunlight

Hè này, Lam xây dựng cho mình kế hoạch luyện tập chủ động trên một hệ thống lập trình trực tuyến. Hệ thống cung cấp n bài toán, hai bài toán có nội dung liên quan được sắp xếp liền kề nhau. Các bài toán có độ khó lần lượt là a_1,a_2,\dots,a_n. Lam đặt ra mục tiêu là kết thúc đợt nghỉ hè phải ôn luyện được một số nội dung nên phải làm được các bài toán liên quan và có tổng độ khó lớn hơn hoặc bằng S.

Do trong hè còn có nhiều hoạt động khác, Lam cũng muốn mình phải làm ít nhất các bài toán mà vẫn đạt mục tiêu đặt ra

Yêu cầu: Hãy giúp Lam tính ra số lượng bài toán ít nhất liên tiếp nhau cần phải làm để đạt tổng độ khó tối thiểu là S

Input, Output và Subtasks

Input: (CAU3.INP)
  • Dòng 1 chứa 2 số nguyên dương n và S (1\le n\le 10^7,1\le S\le 10^{16})
  • Dòng 2 chứa n số nguyên dương a_1,a_2,\dots,a_n (1\le a_i\le 10^9)
Output: (CAU3.OUT)
  • Một số nguyên là số lượng bài toán Lam cần làm. Trường hợp không có phương án thỏa mãn, ghi ra số -1
Subtasks
  • Subtask 1 (25\%): n\le 100,S\le 10^6,a_i\le 10^4
  • Subtask 2 (25\%): n\le 5000,S\le 5\cdot 10^9,a_i\le 10^6
  • Subtask 3 (25\%): n\le 10^5,S\le 10^{14},a_i\le 10^9
  • Subtask 4 (25\%): Không có ràng buộc gì thêm

Sample

Input (CAU3.INP)
10 18
5 1 3 9 10 7 4 9 2 8
Output (CAU3.OUT)
2

Sample

Input (CAU3.INP)
5 27
2 3 5 1 9
Output (CAU3.OUT)
-1

TLEoj Contest #02 - Trọng số của xâu (bản khó)

Sunlight

Trọng số của một xâu s chỉ gồm các chữ cái trong bảng chữ cái tiếng Anh được tính bằng tổng các giá trị i \times v_{s_i}^2 với 1 \le i \le |s|, trong đó |s| là độ dài xâu s, s_i là ký tự thứ i của xâu s, v_{s_i} là vị trí của ký tự s_i trong bảng chữ cái.

Ví dụ, trọng số của xâu s = abca sẽ được tính như sau:

  • Với i = 1, ta có 1 \times v_{s_1}^2 = 1 \times 1^2 = 1.
  • Với i = 2, ta có 2 \times v_{s_2}^2 = 2 \times 2^2 = 8.
  • Với i = 3, ta có 3 \times v_{s_3}^2 = 3 \times 3^2 = 27.
  • Với i = 4, ta có 4 \times v_{s_4}^2 = 4 \times 1^2 = 4.
  • Vậy trọng số của xâu s bằng 1 + 8 + 27 + 4 = 40.

Một xâu con của xâu t là xâu t khi xóa đi một số ký tự (có thể không xóa ký tự nào), và giữ nguyên thứ tự của các ký tự còn lại. Ví dụ ab, bc, abdc hay abc là xâu con của abdc nhưng acd hay cb thì không.

Tính tổng trọng số của tất cả các xâu con của xâu t.

Input, Output và Subtasks

Input: (bàn phím)
  • Một dòng duy nhất gồm xâu t có độ dài không quá 2 \times 10^7.
Output: (màn hình)
  • Một dòng duy nhất là trọng số của các xâu con của xâu t. Vì kết quả có thể rất lớn nên bạn chỉ cần in ra trọng số sau khi đã chia lấy dư cho 10^9 + 7.
Subtasks
  • Subtask 1 (30\%): Độ dài xâu t không vượt quá 20.
  • Subtask 2 (25\%): Độ dài xâu t không vượt quá 200.
  • Subtask 3 (20\%): Độ dài xâu t không vượt quá 2000.
  • Subtask 4 (15\%): Độ dài xâu t không vượt quá 2 \times 10^5.
  • Subtask 5 (10\%): Độ dài xâu t không vượt quá 2 \times 10^7.

Sample

Input (bàn phím)
abc
Output (màn hình)
100
Note
  • Các xâu a, b, c có trọng số lần lượt là 1, 4, 9.
  • Các xâu ab, ac, bc có trọng số lần lượt là 9, 19, 22.
  • Xâu abc có trọng số là 36.

Vậy tổng trọng số của các xâu con của xâu abc là 100.