Ghép thẻ
Xem dạng PDFThông tin
Chi tiết
Dạng bài
Ngôn ngữ cho phép
C, C++, C++20, C++23, Java, Kotlin, Pascal, PyPy, Python
Điểm:
100,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
1G
Input:
PRIME.INP
Output:
PRIME.OUT
Trong giờ sinh hoạt, Hữu An cùng các bạn thử nghiệm một board game mới mang tên Cuộc Đua Nguyên Tố. Mỗi lượt, người chơi bốc một xấp thẻ; trên mỗi thẻ in một chữ số từ ~0~ đến ~9~.
Người chơi được chọn một số lượng thẻ bất kỳ (ít nhất một thẻ), sau đó sắp xếp các thẻ đã chọn để tạo thành một số nguyên dương. Nếu số tạo ra có chữ số ~0~ đứng đầu thì các chữ số ~0~ đó không làm thay đổi giá trị; chẳng hạn, 02 có giá trị là ~2~.
Một giá trị được xem là hợp lệ nếu nó là số nguyên tố.
Yêu cầu
Cho xấp thẻ được mô tả bởi chuỗi ~S~. Hãy xác định:
- Số lượng giá trị nguyên tố phân biệt có thể tạo ra;
- Giá trị nguyên tố lớn nhất có thể tạo ra.
Input
Từ tệp văn bản PRIME.INP:
- Một dòng duy nhất chứa chuỗi chữ số ~S~ ~(2 \le |S| \le 9)~.
Output
Ghi vào tệp văn bản PRIME.OUT:
- Một dòng gồm hai số nguyên: số lượng giá trị nguyên tố phân biệt và giá trị nguyên tố lớn nhất;
- Nếu không tạo được số nguyên tố nào, in ra
0 -1.
Ràng buộc
- Subtask 1 (30% số điểm): ~|S| \le 5~;
- Subtask 2 (40% số điểm): ~|S| \le 7~;
- Subtask 3 (30% số điểm): ~|S| \le 9~.
Ví dụ
Input
13
Output
3 31
Giải thích
Các giá trị nguyên tố phân biệt có thể tạo được là ~3, 13, 31~. Do đó, có ~3~ giá trị hợp lệ và giá trị lớn nhất là ~31~.
Bình luận