Möhtərizələr#4045

Möhtərizələr

1 saniyə
64 meqabayt
Çox çətin

Gəlin mötərizələrin düzgün ardıcıllığını belə müəyyən edək:

Ən azı bir cüt kvadrat mötərizə: [ və uyğun ] olan düzgün mötərizə ardıcıllığında, hər bir kvadrat mötərizə (həm açılan, həm də bağlanan) açılan dairəvi mötərizə ilə əvəz edilmişdir, beləliklə qırıq mötərizə ardıcıllığı əldə edilmişdir.

Məsələn, (( və ((((())) hər ikisi qırıq mötərizə ardıcıllığıdır. Birinci ardıcıllıq düzgün mötərizə ardıcıllığından [] əldə edilir. İkinci ardıcıllıq yalnız aşağıdakı dörd düzgün mötərizə ardıcıllığından əldə edilə bilər: []((())), ([](())), (([]())) və ya ((([]))).

Sizin vəzifəniz verilmiş qırıq mötərizə ardıcıllığından hansı düzgün mötərizə ardıcıllığının əldə edilə biləcəyini hesablamaqdır.

Giriş

Giriş faylının birinci sətri verilmiş qırıq mötərizə ardıcıllığının uzunluğu olan tək bir cüt ədəd N (2 ≤ N ≤ 30000) ehtiva edir. İkinci sətir N simvoldan '(' və ')' ibarətdir - verilmiş qırıq mötərizə ardıcıllığı.

Çıxış

Çıxış faylının tək sətri bir ədəd ehtiva etməlidir - verilmiş qırıq mötərizə ardıcıllığından əldə edilə biləcək düzgün mötərizə ardıcıllığının tələb olunan sayı. Düzgün mötərizə ardıcıllığının sayı böyük ola biləcəyi üçün cavabı 1000000009 modulu ilə çıxarmalısınız.

Nümunələr

Nümunə 1

Loading
Loading