Błąd wykonanie programu.
Ostatnio zmodyfikowano 2019-03-31 11:28
Mamcia Temat założony przez niniejszego użytkownika |
Błąd wykonanie programu. » 2019-03-29 11:53:43 Cześć, mam takie zadanie: http://solve.edu.pl/contests/download_desc/2096 i taki kod: #include <bits/stdc++.h> using namespace std;
long long int tab2[ 200005 ]; int main() { ios_base::sync_with_stdio( false ); cin.tie( 0 ); long long int INF = 1e9; tab2[ 0 ] = 0; for( int i = 1; i <= 200005; i++ ) { tab2[ i ] = INF; } int n; cin >> n; for( int i = 0; i < n; i++ ) { long long int a; cin >> a; for( int j = 200005; j >= 0; j-- ) { if( tab2[ j ] != INF ) { tab2[ j + a ] = min( tab2[ j ] + 1, tab2[ j + a ] ); } } } for( int i = 0; i < 200005; i++ ) { if( tab2[ i ] == INF ) { cout << i; return 0; } } } 5 testów przechodzi a potem pokazuje mi błąd wykonania i nie wiem dlaczego :-( Może ktoś widzi błąd? |
|
pekfos |
» 2019-03-29 12:04:31 Przekraczasz zakres tablicy w pierwszej pętli. |
|
Mamcia Temat założony przez niniejszego użytkownika |
» 2019-03-29 12:08:25 hmmm...co należy zmienić ? |
|
mampro |
» 2019-03-30 17:25:16 out |
|
pekfos |
» 2019-03-31 11:28:38 Nie możesz użyć indeksu równego rozmiarowi tablicy. Robisz to wielokrotnie w tym kodzie. |
|
« 1 » |