# PBinfo #300 – sumainsecv – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: andrei

## Enunț

Cerinţa
Se dă un vector format din n elemente, numere  naturale nenule, şi un număr natural S. Determinaţi, dacă există o secvenţă de elemente din şir cu suma elementelor egală cu S.

Date de intrare
Fişierul de intrare sumainsecv.in conţine pe prima linie numerele n şi S; urmează cele n elemente ale vectorului, dispuse pe mai multe linii şi separate prin spaţii.

Date de ieşire
Fişierul de ieşire sumainsecv.out va conţine pe prima linie numerele p şi u, separate printr-un spaţiu, reprezentând indicele de început şi de sfârşit al secvenţei determinate.

Restricţii şi precizări

1 ≤ n ≤ 100
elementele vectorului vor avea cel mult 4 cifre şi sunt numerotate de la 1 la n
dacă vectorul nu conţine nici o secvenţă cu suma elementelor S, se va afişa 0 0
dacă şirul conţine mai multe secvenţe cu suma elementelor egală cu S, se va determina cea mai din stânga

Exemplu:
sumainsecv.in

8 32  
12 10 15 7 17 13 19 14
sumainsecv.out

2 4
Explicație
Există două secvenţe cu suma elementelor egală cu 32: 10 15 7 şi 13 19. Dintre acestea, 10 15 7 este cea mai din stânga.

## Cod sursă C++

```cpp
#include <fstream>
using namespace std;
ifstream in("sumainsecv.in");
ofstream out("sumainsecv.out");
int main() {
    int n, K, v[105];
    in >> n >> K;
    int st = 0, dr = 0;
    for (int i = 1; i <= n; ++i)
        in >> v[i];
    for (int i = 1; i <= n && st == 0; ++i)
        for (int j = i; j <= n && st == 0; ++j) {
            int S = 0;
            for (int k = i; k <= j; ++k)
                S = S + v[k];
            if (S == K)
                st = i, dr = j;
        }
    out << st << " " << dr;
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/300)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/300/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-300/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
