C++ wypisanie indeksów tablicy po wyszukaniu największej sumy w podciągu
Ostatnio zmodyfikowano 2022-11-24 20:08
Ania_farma Temat założony przez niniejszego użytkownika |
C++ wypisanie indeksów tablicy po wyszukaniu największej sumy w podciągu » 2022-11-23 23:36:40 Cześć, próbuje znaleźć sposób na wypisanie indeksów tablicy pod którymi znajduje się wyszukana największa suma podciągu. #include <iostream>
using namespace std; int sumCount( int arr[ ], int size );
int main() { int arr[ ] = { 3, 5, 10, - 7, 87, - 55, - 100 }; int size = sizeof( arr ) / sizeof( arr[ 0 ] ); cout << "Podciag o najwyzszej sumie: " << sumCount( arr, size ) << endl; return 0; }
int sumCount( int arr[ ], int size ) { int max_sum = arr[ 0 ], max_current = arr[ 0 ]; for( int i = 1; i < size; i++ ) { max_current = max( arr[ i ], max_current + arr[ i ] ); max_sum = max( max_sum, max_current ); } return max_sum; }
Na początku chciałam żeby pętla pokazywała wszystkie liczby wyszukanego podciągu, jednak to też mi nie wyszło. Z góry dziękuję za podpowiedzi. |
|
pekfos |
» 2022-11-24 20:08:57 Użyj zwykłego if zamiast max(). Gdy aktualizujesz wynik, zapisz i w dodatkowych zmiennych. |
|
« 1 » |