#include <iostream>
using namespace std;
#define MAX 2020
int wina[MAX][MAX];
int main()
{
int n, k, x = 0, y = 0, mx = MAX;
cin >> n >> k;
for(int i = 0; i < n * (n + 1) / 2; ++i) {
cin >> wina[x][y];
int stacked = (x+1)*(x+2)/2 - y * (y + 1) / 2 - (x-y) * (x-y+1) / 2;
if(stacked <= k && wina[x][y] <= mx) {
mx = wina[x][y];
}
if(x == y) {
++x;
y = 0;
} else {
++y;
}
}
cout << mx << endl;
return 0;
}
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; #define MAX 2020 int wina[MAX][MAX]; int main() { int n, k, x = 0, y = 0, mx = MAX; cin >> n >> k; for(int i = 0; i < n * (n + 1) / 2; ++i) { cin >> wina[x][y]; int stacked = (x+1)*(x+2)/2 - y * (y + 1) / 2 - (x-y) * (x-y+1) / 2; if(stacked <= k && wina[x][y] <= mx) { mx = wina[x][y]; } if(x == y) { ++x; y = 0; } else { ++y; } } cout << mx << endl; return 0; } |
English