#include <iostream>
using namespace std;
int rzeczy[30], plecaki[107], wyniki[107];
int main()
{
ios_base::sync_with_stdio( 0 );
int n, m, s=0, s2=0;
bool moszna=false;
cin >> n >> m;
for( int i = 0; i < n; i++ )
{
cin >> rzeczy[i];
s = s + rzeczy[i];
}
for( int i = 0; i < m; i++ )
{
cin >> plecaki[i];
}
for( int i = 0; i < m; i++ )
{
int pom = plecaki[i];
s2 = 1;
for( int j = 0; j < m; j++ )
{
if( j != i )
{
if( pom + plecaki[j] > s )
{
wyniki[i] = s2 + 1;
moszna = true;
j = m;
}
else
{
pom = pom + plecaki[j];
s2 = s2 + 1;
}
}
}
}
if( moszna )
{
int minw=100000007;
for( int i = 0; i < m; i++ )
{
if( wyniki[i] < minw && wyniki[i] > 0 )
{
minw = wyniki[i];
}
}
cout << minw;
}
else cout << "NIE";
}
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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | #include <iostream> using namespace std; int rzeczy[30], plecaki[107], wyniki[107]; int main() { ios_base::sync_with_stdio( 0 ); int n, m, s=0, s2=0; bool moszna=false; cin >> n >> m; for( int i = 0; i < n; i++ ) { cin >> rzeczy[i]; s = s + rzeczy[i]; } for( int i = 0; i < m; i++ ) { cin >> plecaki[i]; } for( int i = 0; i < m; i++ ) { int pom = plecaki[i]; s2 = 1; for( int j = 0; j < m; j++ ) { if( j != i ) { if( pom + plecaki[j] > s ) { wyniki[i] = s2 + 1; moszna = true; j = m; } else { pom = pom + plecaki[j]; s2 = s2 + 1; } } } } if( moszna ) { int minw=100000007; for( int i = 0; i < m; i++ ) { if( wyniki[i] < minw && wyniki[i] > 0 ) { minw = wyniki[i]; } } cout << minw; } else cout << "NIE"; } |
English