题解
【基础】取数
1 条题解
-
0
#include <bits/stdc++.h> using namespace std; int a[2005][2005],s=INT_MAX,n,k; int main() { //要取某个点就要把该点上面以及左上方和右上方的数全部拿走, //会发现是近似平行四边形,平行四边形的面积<=k说明里面的数都有可能被取到。 //找在平行四边形面积内最小的数 cin>>n>>k; for(int i=1;i<=n;i++) { for(int j=1;j<=i;j++) { cin>>a[i][j]; if(j*(i-j+1)<=k) { s=min(s,a[i][j]); } } } cout<<s<<endl; return 0; }
- 1