📝 **Giải Bài Toán: Tìm Số Nguyên Tố Đối Xứng Lớn Nhất**
--------------------------------------------------------
### **1️⃣ Đề Bài**
Cho một số nguyên dương **N**. Hãy tìm **số nguyên tố đối xứng lớn nhất** không vượt quá **N**.
Một số là **số nguyên tố đối xứng** nếu:
- **Là số nguyên tố** (chỉ chia hết cho 1 và chính nó).
- **Là số đối xứng** (đọc từ trái sang phải và phải sang trái giống nhau).
---
### **2️⃣ Ví Dụ**
#### **Input**:
```
100
```
#### **Giải thích**:
Các số đối xứng trong khoảng từ 1 đến 100: `1, 2, 3, 5, 7, 11, 22, 33, 44, 55, 66, 77, 88, 99`
Trong đó, số vừa **đối xứng** vừa **là số nguyên tố**: `2, 3, 5, 7, 11`
👉 **Số nguyên tố đối xứng lớn nhất ≤ 100 là `11`**
#### **Output**:
```
11
```
---
### **3️⃣ Cách Giải**
1. **Duyệt giảm dần từ `N` về `2`**, tìm số thỏa mãn điều kiện.
2. **Kiểm tra số nguyên tố** bằng cách thử chia các số từ `2` đến `sqrt(n)`.
3. **Kiểm tra số đối xứng** bằng cách so sánh số với chuỗi đảo ngược của nó.
4. **Trả về số đầu tiên thỏa mãn**.
---
### **4️⃣ Code Python**
```python
import math
def la_so_nguyen_to(n):
"""Kiểm tra số nguyên tố"""
if n < 2:
return False
for i in range(2, int(math.sqrt(n)) + 1):
if n % i == 0:
return False
return True
def la_so_doi_xung(n):
"""Kiểm tra số đối xứng"""
return str(n) == str(n)[::-1]
def so_nguyen_to_doi_xung_lon_nhat(N):
"""Tìm số nguyên tố đối xứng lớn nhất không vượt quá N"""
for num in range(N, 1, -1):
if la_so_doi_xung(num) and la_so_nguyen_to(num):
return num
# Đọc input
N = int(input())
# Xuất kết quả
print(so_nguyen_to_doi_xung_lon_nhat(N))
```
---
### **5️⃣ Giải Thích Code**
- **Hàm `la_so_nguyen_to(n)`**: Kiểm tra xem `n` có phải số nguyên tố không bằng cách thử chia từ `2` đến `sqrt(n)`.
- **Hàm `la_so_doi_xung(n)`**: Chuyển số thành chuỗi, kiểm tra nếu chuỗi đó bằng chuỗi đảo ngược của nó. Nếu bằng thì là **số đối xứng**.
- **Hàm `so_nguyen_to_doi_xung_lon_nhat(N)`**: để tìm số nguyên tố đối xứng lớn nhất nhỏ hơn hoặc bằng`n`
- Duyệt giảm dần từ `N` về `2`.
- Nếu số đó vừa là **số nguyên tố** vừa là **số đối xứng**, trả về ngay.