{"trustable":false,"sections":[{"title":"","value":{"format":"HTML","content":"Trên một bảng cờ có hình dạng cụ thể (có thể là không đều), đặt các quân cờ, các quân cờ không khác biệt nhau. Yêu cầu khi đặt, hai quân cờ bất kỳ không được đặt trên cùng một hàng hoặc cột của bảng cờ, hãy viết chương trình để tìm tất cả các cách đặt có thể của k quân cờ trên bảng cờ có hình dạng và kích thước cụ thể."}},{"title":"Nhập","value":{"format":"HTML","content":"Nhập chứa nhiều bộ dữ liệu kiểm tra. Mỗi bộ dữ liệu có dạng:\n\u003cbr\u003eDòng đầu tiên của mỗi bộ dữ liệu là hai số nguyên dương, n và k, cách nhau bởi một dấu cách, đại diện cho việc mô tả bảng cờ trong ma trận n x n và số lượng quân cờ cần đặt. n $\\leq$ 8, k $\\leq$ n\n\u003cbr\u003eKhi là -1 -1 thì đó là kết thúc của dữ liệu nhập.\n\u003cbr\u003eCác dòng tiếp theo mô tả hình dạng của bảng cờ: mỗi dòng có n ký tự, trong đó \u003ccode\u003e#\u003c/code\u003e biểu thị khu vực của bảng cờ, \u003ccode\u003e.\u003c/code\u003e biểu thị khu vực trống (đảm bảo không có hàng hoặc cột trống thừa).\n\u003cbr\u003e"}},{"title":"Đầu ra","value":{"format":"HTML","content":"Đối với mỗi bộ dữ liệu, in ra một dòng, in ra số lượng cách đặt C (đảm bảo rằng $C \\leq 2$\u003csup\u003e$31$\u003c/sup\u003e)."}},{"title":"Ví dụ","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e2 1\n#.\n.#\n4 4\n...#\n..#.\n.#..\n#...\n-1 -1\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e2\n1\n\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}