C11LOCK - Ổ khóa đặc biệt

Giới hạn
  • Thời gian: 2.0s
  • Bộ nhớ: 1536MB
  • Mã nguồn: 50000 bytes

Ghi chú: Các bài VNOI đã được chuyển qua VNOJ (Thông báo). Đề bài trên VNOI và vn.spoj.com sẽ không được cập nhật nữa. Một số đề bài không chính xác sẽ chỉ được cập nhật trên VNOJ. Bạn vẫn có thể tìm kiếm đề bài trên VNOI.

Link đọc đề trên VNOJ

Ổ khóa nhà của yenthanh132 rất đặc biệt. Nó gồm 5 vòng số. Mỗi vòng có đúng n số, mỗi số có một giá trị nhất định. Cụ thể, vòng thứ i sẽ chứa n số: a(i,1), a(i,2), a(i,3),..., a(i, n).

Do vốn tính hay quên nên yenthanh132 không để một mật mã nhất định mà thay vào đó yenthanh132 đã yêu cầu người ta thiết kế ra một ổ khóa đặt biệt như sau: yenthanh132 sẽ chọn ra một số nguyên k. Để mở được ổ khóa, ta cần phải xoay các vòng số, sao cho tổng 5 số hiện trên 5 vòng số này bằng k.

Yêu cầu: Cho các giá trị trên 5 vòng số. Hãy giúp yenthanh132 đếm xem có bao nhiêu cách để mở ổ khóa của anh ta. Giả sử có 2 cách xoay để chọn các số trên vòng số là [a(1,i1), a(2,i2), a(3,i3), a(4,i4), a(5,i5)] và [a(1,j1), a(2,j2), a(3,j3), a(4,j4), a(5,j5)]. Hai cách đó được xem là khác nhau nếu: hoặc i1 ≠ j1, hoặc i2 ≠ j2, hoặc i3 ≠ j3, hoặc i4 ≠ j4, hoặc i5 ≠ j5. (xem ví dụ để hiểu rõ hơn).

Dữ liệu

  • Dòng đầu tiên chứa hai số nguyên n và k.
  • Tiếp theo là 5 dòng, mỗi dòng n số nguyên, số thứ j trên dòng thứ i+1 là giá trị của a(i,j).

Kết quả

  • Một số nguyên duy nhất là số cách để mở ổ khóa của yenthanh132 .

Giới hạn

  • 1 ≤ n ≤ 500
  • Trong 10% test có n ≤ 20
  • Trong 30% test tiếp theo có n ≤ 100
  • -10 9 ≤ a(i,j), k ≤ 10 9

Ví dụ

    Input 1:
    2 2
    -2 -2
    1 2
    1 2
    1 2
    1 2 
    Output 1:
    2
    
    Input 2:
    5 7
    -3 -4 -6 5 -2
    9 9 2 -3 -3
    -3 -8 7 10 7
    0 4 1 -4 1
    5 2 -7 -9 3
    
    Output 2:
    113


    • Người up: yenthanh132
    • Nguồn bài: Lê Yên Thanh