下面的 C++ 解法看起来跑在虚拟机上,应该是 C# 吧
【 在 omni 的大作中提到: 】
: leetcode上做了几道题,
: 同样的逻辑,Rust 48ms 6M内存,改成 C++ 结果用了 200ms 62MB内存。
: (
https://leetcode.cn/problems/number-of-ways-to-rearrange-sticks-with-k-sticks-visible)
: C++
: ============================
: class Solution {
: public:
: int rearrangeSticks(int n, int k) {
: vector<vector<int>> f(n+1, vector<int>(k+1));
: for (int i = 1; i <= n; i++) {
: for (int j = 1; j <= min(i,k); j++) {
: if (i == j) {
: f[i][j] = 1;
: } else {
: f[i][j] = long(f[i-1][j]) * long(i-1) % 1000000007;
: if (i > 1 && j > 1) {
: f[i][j] += f[i-1][j-1];
: f[i][j] %= 1000000007;
: }
: }
: }
: }
: return f[n][k];
: }
: };
--
FROM 27.115.42.*