Odpowiedź :
Odpowiedź:
#include <iostream>
int main() {
int stos = 0; //początkowa liczba pionków na stosie
int n; // liczba ruchów
std::cin >> n; //wczytanie ruchów do zmiennej n
int d; //dodawane lub odejmowane pioski ze stosu
int *wartosciStosu = new int[n];
for (int i = 0; i < n; i++) { //liczenie wartosci pionkow na stosie
std::cin >> d;
stos += d;
wartosciStosu[i] = stos;
}
int p; //liczba pytań doktora
std::cin >> p;
int *pytaniaDoktora = new int[p];
for (int i = 0; i < p; i++) {
std::cin >> pytaniaDoktora[i];
}
int counter = 0;
for(int i = 0; i < p; i++){ //sprawdzamy czy zgadl liczbe
for(int j = 0; j < n; j++){
if(pytaniaDoktora[i] == wartosciStosu[j]){
counter++;
}
}
if(counter > 0){
std::cout << "TAK" << std::endl; //jezeli w danej turze zgadł to wyswietlamy tak a jak nie to nie
}else{
std::cout << "NIE" << std::endl;
}
counter = 0;
}
delete[] wartosciStosu;
delete[] pytaniaDoktora;
return 0;
}
Wyjaśnienie:
Jak coś niejasne to pytaj. Zrobiłem na tablicach dynamicznych. Mogłem na wektorach, ale nie ma tu to większego znaczenia