###### tags: `exercise` `array` `basic` `fill_in_the_blank`
# Dãy Con Tăng Dài Nhất
* https://lqdoj.edu.vn/problem/incarr
### Yêu cầu đề
- Nhập vào hai mảng a (ban đầu là dãy không giảm) và b (thứ tự bất kì). Có thể thực hiện thao tác sau, xóa một phần tử ở mảng b rồi thêm vào một vị trị bất kì trong mảng a. Sau khi thực hiện tối đa m (số phần tử mảng b) thao tác thì độ dài xâu a là bao nhiêu. Với điều kiện a khi này là dãy tăng dần.
### Hướng dẫn
1. Nhập vào số phần tử và các giá trị của 2 mảng.
* Sử dụng các hàm: input(), map(), split(), list(), int().
2. Thêm các phần tử của mảng b vào mảng a với thứ tự bất kì.
4. Loại bỏ các phần tử trùng lặp trong mảng a để biến mảng từ trạng thái không giảm sang tăng dần.
* Gợi ý dùng kiểu dữ liệu set()
### Điền vào chỗ trống
* Hãy điền vào chỗ trống (`___`) để hoàn thành bài tập này.
```python
# Copyright (c) 2023, Le Duc Phuc Long
"""
If you don't think twice, you have to code twice.
"""
n, m = map(int, input().split())
a = ___
b = ___
a = a+b
___
print(___)
```
### Phần kết
* Giải thích thêm về thuật toán:
* Như đã nói trong phần hướng dẫn, ta chỉ cần gộp mảng a và mảng b lại, rồi xóa những phần tử trùng lặp là đã có được kết quả bài toán.
* Bởi vì sau khi làm bước này ta đã có được một mảng a sau khi đã thêm vào các phần tử của mảng b, đặc biệt là những phần tử trong đó là duy nhất.
* Bây giờ nếu ta sắp xếp lại mảng thì sẽ thu được mảng a tăng dần. Nhưng đề chỉ yêu cầu số lượng phần tử của mảng a khi này chứ không quan tâm đến thứ tự nên ta không làm điều đó.
* Sau khi hoàn thành chương trình trên, hãy nộp bài ở link được gắn ở đầu bài viết để xem kết quả.
* Qua bài tập, hi vọng bạn đã biết thêm được điều gì đó.
* Nếu bạn phát hiện sai sót, có thắc mắc, hay bất kì ý kiến đóng góp nào…
-> Xin hãy cho tôi biết qua: m.me/phuclong.leduc