Bài 1: (6 điểm)

Một xâu chữ cái được gọi là xâu số nếu sau khi xoá một vài kí tự ta thu được một trong các xâu sau: ONE, TWO, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT hoặc NINE.  Các xâu ONE, TWO, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT, NINE được gọi là các từ số (tương ứng với các số nguyên 1, 2, 3, 4, 5, 6, 7, 8, 9).

Ví dụ:

* BOUNCE ANNOUNCE là hai xâu số vì hai xâu này có chứa từ số ONE.

* ENCODE không phải là xâu số, vì dù có chứa các kí tự O, N và E, nhưng vị trí các kí tự O, N và E trong xâu này không đúng thứ tự.

Yêu cầu:

Viết chương trình kiểm tra một xâu kí tự chữ cái in hoa được nhập vào từ bàn phím xem có phải là xâu số hay không. Nếu xâu được nhập vào là xâu số thì xuất ra màn hình một số nguyên tương ứng với từ số chứa trong xâu này. Nếu xâu được nhập vào không phải là xâu số thì xuất ra màn hình “KHONG”.

Bài 2: (7 điểm)

Một dãy số nguyên A: a1, a2,..., aN được gọi là dãy chia hết hoàn toàn nếu A có ít nhất 2 phần tử và mọi phần tử aj đều chia hết cho tất cả các phần tử ai đứng trước nó (1 ≤ i < j ≤ N).

Một dãy con của A là một cách chọn ra trong A một số phần tử giữ nguyên thứ tự.

Yêu cầu: Viết chương trình nhập vào một dãy số nguyên A: a1, a2,..., aN. Tìm dãy con chia hết hoàn toàn của A có độ dài lớn nhất.

Ví dụ 1: Dãy A: 3, 5, 9, 7, 15, 18, 35, 54. Dãy con chia hết hoàn toàn dài nhất là: 3, 9, 18, 54.

Ví dụ 2: Dãy A: 6, 9, 15. Không tìm được dãy con chia hết hoàn toàn.

Dữ liệu vào: Cho trong file văn bản MULSEQ.IN gồm 2 dòng:

- Dòng đầu tiên chứa số nguyên dương N (1 ≤ n ≤ 5000), là số lượng phần tử của dãy A.

- Dòng thứ hai gồm N số nguyên a1, a2,..., aN ( -10000 ≤ ai ≤ 10000), các số được viết cách nhau ít nhất một dấu cách.

Dữ liệu ra: Ghi ra file văn bản MULSEQ.OU:

- Nếu tìm được dãy con chia hết hoàn toàn thì file MULSEQ.OU gồm 2 dòng:

+ Dòng đầu ghi độ dài của dãy con chia hết hoàn toàn dài nhất tìm được.

+ Dòng thứ hai ghi các phần tử được chọn vào dãy con này.

- Nếu không tìm được dãy con chia hết hoàn toàn thì file MULSEQ.OU ghi số -1.