
越往右越大,越往下越大
dp[i][j]:
i表示第一行放的数字个数,
j表示第二行放的数字个数
//#include <bits/stdc++.h>
//using namespace std;
//int dp[2025][2025];
//int main(){
// ios::sync_with_stdio(0);
//
// dp[0][0] = 1;
// for(int i = 1; i <= 1010; i++){
// for(int j = 0; j <= i; j++){
// // if(i==1 && j == 1) continue;
// if(j) dp[i][j] += dp[i-1][j];
// dp[i][j] += dp[i][j-1];
// dp[i][j] %= 2020;
// }
// }
// cout << dp[1010][1010];
// return 0;
//}
#include <bits/stdc++.h>
using namespace std;
int dp[1015][1015];
int main(){
ios::sync_with_stdio(0);
dp[0][0] = 1;
dp[0][1] = 1;
dp[1][0] = 1;
dp[1][1] = 1;
for(int i = 1; i <= 1010; i++){
for(int j = 0; j <= i; j++){
if(i == 1 && (j == 0 || j == 1)) continue;
dp[i][j] = (dp[i][j] + dp[i-1][j] + dp[i][j-1]) % 2020;
}
}
cout << dp[1010][1010];
return 0;
}
本文介绍了E矩阵,一种在数学中用于处理排列组合问题的工具。通过E矩阵,我们可以更直观地理解如何在有限空间内排列不同数量的数字,其中矩阵的元素随着行数和列数的增加而增大。

1682

被折叠的 条评论
为什么被折叠?



