#include <iostream> using namespace std; int n, k, dp[2010][2010], a, res = 12345; int main () { cin >> n >> k; for (int i=1; i<=n; i++) { for (int j=1; j<=i; j++) { if (j == 1 || j == i) { dp[i][j] = i; } else { dp[i][j] = dp[i-1][j-1] + dp[i-1][j] - dp[i-2][j-1] + 1; } } } for (int i=1; i<=n; i++) { for (int j=1; j<=i; j++) { cin >> a; if (dp[i][j] <= k) { res = min(res, a); } } } cout << res << endl; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | #include <iostream> using namespace std; int n, k, dp[2010][2010], a, res = 12345; int main () { cin >> n >> k; for (int i=1; i<=n; i++) { for (int j=1; j<=i; j++) { if (j == 1 || j == i) { dp[i][j] = i; } else { dp[i][j] = dp[i-1][j-1] + dp[i-1][j] - dp[i-2][j-1] + 1; } } } for (int i=1; i<=n; i++) { for (int j=1; j<=i; j++) { cin >> a; if (dp[i][j] <= k) { res = min(res, a); } } } cout << res << endl; } |