Aceasta este o continuare la articolul de la acest link. Aici nu se scrie în fișier ci pe ecran.
Vizual
Rezolvare
#include <iostream>
using namespace std;
void subsecv(int A[], int S[], int n, int &st, int &sf)
{
sf = -1;
int max = -(1 << 30); // -infinit
for (int i = 1; i <= n; ++i)
{
if (S[i] > max)
{
max = S[i], sf = i;
}
}
int crt = sf;
while (A[crt] != S[crt])
{
--crt;
}
st = crt;
}
int main()
{
int st, sf;
//int n = 10;
//int A[] = {0, -6, 1, -3, 4, 5, -1, 3, -8, -9, 1};
//int S[] = {0, -6, 1, -2, 4, 9, 8, 11, 3, -6, 1};
//int n = 8;
//int A[] = {0, -2, -3, 4, -1, -2, 1, 5, -3 };
//int S[] = {0, -2, -3, 4, 3, 1, 2, 7, 4 };
int n = 10;
int A[] = { 0, 0, -2, -3, 4, -1, -2, 1, 5, -3, 0 };
int S[] = { 0, 0, -2, -3, 4, 3, 1, 2, 7, 4, 4 };
subsecv(A, S, n, st, sf);
cout << "Inceput: " << st << endl
<< "Sfarsit: " << sf << endl;
return 0;
}
Niciun comentariu:
Trimiteți un comentariu