Phiên bản ngắn hơn của Thử thách nhà chọc trời
Bài tập
Cho một mảng các chiều cao của tòa nhà và một số nguyên dương k
, tìm tất cả các hoán vị (không trùng lặp) của các độ cao sao cho chính xác các k
tòa nhà có thể nhìn thấy được.
Bất kỳ tòa nhà nào cũng sẽ ẩn tất cả các tòa nhà có chiều cao ngắn hơn hoặc bằng nhau phía sau nó.
Bất kỳ định dạng cho đầu vào và đầu ra là hợp lệ.
Mảng đầu vào sẽ không bao giờ trống
Trong trường hợp không thể thấy chính xác như nhiều tòa nhà, hãy xuất bất cứ thứ gì không thể là câu trả lời nhưng không có lỗi.
Ví dụ:
(Độ dài của đầu ra được hiển thị cho các đầu ra rất dài, nhưng đầu ra của bạn phải là tất cả các hoán vị có thể)
input:[1,2,3,4,5],2
output: 50
input:[5,5,5,5,5,5,5,5],2
output: []
input:[1,2,2],2
output:[(1,2,2)]
Seeing from the left, exactly 2 buildings are visible.
input:[1,7,4],2
output:[(4, 7, 1), (1, 7, 4), (4, 1, 7)]
input:[1,2,3,4,5,6,7,8,9],4
output:67284
input:[34,55,11,22],1
output:[(55, 34, 11, 22), (55, 22, 34, 11), (55, 34, 22, 11), (55, 11, 34, 22), (55, 22, 11, 34), (55, 11, 22, 34)]
input:[3,4,1,2,3],2
output:31
Đây là môn đánh gôn nên mã ngắn nhất sẽ thắng
Tùy chọn: Nếu có thể, bạn có thể thêm một cái gì đó như if length is greater than 20: print length else print answer
. Trong phần chân trang, không phải trong mã.
[1,2,3,4,5],5 -> [(1,2,3,4,5)]
. Không có trường hợp thử nghiệm hiện tại nào đảm bảo rằng câu trả lời có thể hỗ trợ hiển thị tất cả các tòa nhà (mặc dù tôi không biết liệu có thực sự có vấn đề gì với điều đó không).