#include<iostream> using namespace std; int main() { int n,k; int min = 2020; cin>>n>>k; int ** tab = new int* [n]; for(int i=0;i<n;i++) { tab[i]=new int [i+1]; for(int j=0;j<=i;j++) cin>>tab[i][j]; } int war_st=1; int war_dod=1; int przesk=1; for(int i=0;i<n;i+=2) { int war=war_st; for(int j=0;j+i<n && war<=k;j++) { if(tab[i+j][i/2]<min)min=tab[i+j][i/2]; if(tab[i+j][i/2+j]<min)min=tab[i+j][i/2+j]; //cout<<tab[i+j][i/2]<<","<<tab[i+j][i/2+j]<<" : "<<war<<endl; war+=przesk; } war_dod+=2; war_st+=war_dod; przesk++; } cout<<min; 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 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | #include<iostream> using namespace std; int main() { int n,k; int min = 2020; cin>>n>>k; int ** tab = new int* [n]; for(int i=0;i<n;i++) { tab[i]=new int [i+1]; for(int j=0;j<=i;j++) cin>>tab[i][j]; } int war_st=1; int war_dod=1; int przesk=1; for(int i=0;i<n;i+=2) { int war=war_st; for(int j=0;j+i<n && war<=k;j++) { if(tab[i+j][i/2]<min)min=tab[i+j][i/2]; if(tab[i+j][i/2+j]<min)min=tab[i+j][i/2+j]; //cout<<tab[i+j][i/2]<<","<<tab[i+j][i/2+j]<<" : "<<war<<endl; war+=przesk; } war_dod+=2; war_st+=war_dod; przesk++; } cout<<min; return 0; } |