Siema
Mam problem z takim zadaniem. Mam podany ciąg liczb oraz wielkość sumy jaką mam znaleźć w ciągu. Mam wypisać jego długość dla danej sumy np.
4 3 // 4 - długość ciągu, 3 - poszukiwana suma
1 2 3 4
Odp
2 // Długość ciągu który da mi tą sumę
Jeżeli nie ma takiej sumy ma wypisać "NIE".
Mój problem polega na tym, że mój program zawsze zaczyna od początku a przecież tak być nie musi np.
4 5
1 2 3 2
ODP
powinna być 2 bo mamy podciąg 3 + 2
a wypisuje "NIE"
Mój kod:
#include <cstdio>
#include <iostream>
using namespace std;
int main()
{
int n,k, liczby[100], suma=0, ciag=0;
scanf("%d%d",&n, &k);
for(int i=0;i<n;i++)
{
scanf("%d",&liczby[i]);
if(suma<k)
{
suma=suma+liczby[i];
ciag++;
}
}
if(suma!=k)
printf("NIE");
else
printf("%d",ciag);
system("PAUSE");
return 0;
}
Z góry dziękuję za pomoc.