DEL


Submit solution

Points: 100
Time limit: 1.0s
Memory limit: 495M

Problem type

Minh và Hồng cùng chơi trò chơi xóa số như sau:

Minh viết một dãy gồm \(n\) số \(a_1, a_2, …, a_n\), sau đó Hồng sẽ tìm cách xóa số theo quy tắc: Mỗi bước Hồng được chọn một dãy liên tiếp các số giống nhau rồi xóa bỏ các số đó. Sau khi xóa xong, các số được dồn lại và Hồng lại tiếp tục xóa cho đến khi xóa hết tất cả các số. Một cách xóa được gọi là thông minh nếu số bước xóa phải thực hiện là ít nhất.

Sau khi xóa xong dãy số, để chứng minh cách xóa của mình là thông minh, hơn nữa Hồng muốn chứng minh kỹ thuật lập trình của mình, Hồng đã quyết định viết một chương trình tính số bước xóa ít nhất cần thực hiện với một dãy số bất kì.

Yêu cầu: Cho dãy gồm \(n\) số \(a_1, a_2, …, a_n\), hãy tính số bước xóa ít nhất cần thực hiện

Input

  • Dòng 1: số \( n (n<=300)\)
  • Dòng 2: gồm \(n\) số \(a_1, a_2, …, a_n (|a_i|<=10^9) \)

Output

  • Gồm một dòng là số bước xóa ít nhất cần thực hiện

Sample Input

5 
1 2 3 2 1

Sample Output

3

Comments


  • -4
    10Tin_thedan  commented on Nov. 4, 2024, 4:02 a.m.

    del


  • -2
    hiensumi  commented on March 24, 2023, 11:30 a.m. edited


    • -8
      Viết  commented on Sept. 24, 2023, 8:49 p.m.

      This comment is hidden due to too much negative feedback. Click here to view it.