Board game mang tên "Cùng nhau"


Submit solution

Points: 2
Time limit: 0.1s
Memory limit: 10M

Author:
Problem type
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG

ĐT là một người chơi hệ Board game, anh ta sở hữu rất nhiều Board game như: ma sói, cờ tỷ phú, mèo nổ, uno… và là một thành viên trong group 'Sói tiên tri'. Sau khi trải nghiệm đa số Board game và một số Dringking game, group Sói tiên tri sáng tạo ra một Board game mới có tên 'Bình phương', với luật chơi như sau:

  • Một bộ bài có N lá bài, mỗi lá bài là một ký tự in hoa trong khoảng từ 'A' đến 'Z'. Người chơi sẽ được bốc K lá bài bất kỳ trong bộ bài (không theo thứ tự).

  • Điểm của người chơi được tính như sau: Mỗi lá bài tương ứng với một điểm, nhưng nếu có T lá bài cùng ký tự trên bộ bài (tính cả lá vừa bốc được), thì những lá bài cùng ký tự đó sẽ có T điểm.

Tổng điểm của người chơi sẽ bằng tổng điểm của tất cả các lá bài trên tay họ.

Các bạn hãy tính toán xem, với một bộ bài cho trước, ĐT sẽ dành tối đa bao nhiêu điểm số, để anh ấy trở nên vô địch nhé.

Input:

Dòng đầu tiên là 2 số nguyên N và K (1 <= K <= N <=100000)

Dòng tiếp theo nhập xâu gồm N chữ cái in hoa (từ 'A' – 'Z')

Output: Số điểm tối đa mà ĐT có thể đạt được.

Example:

Input 1:

10 5

MJDIJABJJA

Output 1:

17


Comments


  • 0
    z3r0_l0v3  commented on Sept. 24, 2023, 3:22 p.m.

    Bài này mình chịu. Phải convert code từ Java sang C++ để pass.