Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

P161SUMI - ROUND 1I - Card game

OOO có n card game, mỗi card được viết trên đó một chữ cái in hoa. Ghost là bạn của OOO, sẽ phải chọn ra k tấm thẻ từ n tấm thẻ. Để thú vị hơn cho việc chọn thẻ thì mỗi cách chọn thể sẽ được quy ra một số điểm và Ghost phải chọn k tấm thẻ sao cho số điểm nhận được là lớn nhất. Cách tính điểm như sau.

Điểm = (Số lượng thẻ kí tự ‘A’) ^ 2 + … + (Số lượng thẻ kí tự ‘Z’) ^ 2.

Các bạn hãy giúp Ghost chọn k thẻ sao cho số điểm nhận được là lớn nhất nhé.

Input

Dòng đầu tiên gồm 2 số nguyên n, k (1 <= k <= n <= 10 ^ 5)

Dòng thứ 2 chứa n kí tự không có dấu cách, kí tự thứ i đại diện cho chữ cái được ghi trên thẻ thứ i (1 <= I <= n)

Output

Số điểm lớn nhất mà Ghost có thể nhận được.

Example

Input:
5 3
AOWBY
Output: 3

Được gửi lên bởi:adm
Ngày:2016-07-07
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:ASM32-GCC ASM32 MAWK BC C CSHARP C++ 4.3.2 CPP CPP14 COFFEE LISP sbcl DART FORTH GO JAVA JS-RHINO KTLN OCT PAS-GPC PAS-FPC PERL PERL6 PROLOG PYTHON PYTHON3 PY_NBC R RACKET SQLITE SWIFT UNLAMBDA

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.