面试题16.11.跳水板
已知共有k块板,每块板板长可能是shorter或者longer,要求得到从小到大的顺序,也就是说板的组合中longer长度板的长度从0增加到k,那么shorter板的长度就是从k减少到0
class Solution {
public:
vector<int> divingBoard(int shorter, int longer, int k) {
if(k==0) return vector<int>{};
if(shorter==longer){
return vector<int>{k*shorter};
}
vector<int> ans;
for(int i=0;i<=k;i++){
int temp=longer*i+(k-i)*shorter;
ans.push_back(temp);
}
return ans;
}
};
时间复杂度O(k),空间复杂度O(1)。(除返回数组以外,额外空间消耗为0)