Latihan Algoritma (intermediate)

top custom html 2Satu lagi dari www.interviewstreet.com ... Lego Blocks Dengan berbekal papan-papan yg jumlahnya banyak sekali, ingin dibentuk sebuah dinding berukuran H organisation x W unit. Ada 4 jenis papan, masing-masing punya tinggi 1 unit, dan panjangnya bisa 1, 2, 3, atau 4 unit. Kita disuruh gunakan papan-papan itu untuk membentuk dinding. Tiap papan hanya boleh digunakan secara horizontal. Ada syarat penting. Dinding yg terbentuk harus "solid", artinya dinding ini tidak bisa dibelah secara vertikal tanpa memotong papan yg menyusunnya. Ada berapa carakah yg mungkin untuk membentuk dinding H x W ini? Contoh konfigurasi yg legal untuk dinding H=2 x W=2: Code: +-+-+ | | | +-+-+ |  | +-+-+ Contoh konfigurasi yg tidak legal untuk dinding H=2 x W=2 ... dinding di bawah ini bisa dibelah secara vertikal tanpa memotong papan-papan yg menyusunnya: Code: +-+-+ | | | +-+-+ | | | +-+-+ Input Spec Baris pertama adalah T, jumlah effort housing yg ada (1 <= T <= 100). T baris berikutnya masing-masing berisi 2 number H dan W, 1 <= H, W <= 1000. Output Spec Untuk tiap effort case, cetak ada berapa cara yg mungkin untuk membentuk dinding H x W. Karena nilai ini bisa terlalu besar, cetak saja nilai ini modulo 1,000,000,007. Sample Input Code: 4 2 2 3 2 2 3 4 4 Sample Output Code: 3 7 9 3375 bottom custom html 1
Suchmaschine
Bookmark and Share

0 komentar:

Posting Komentar