kod w C++,jak zmienić deklarację dynamicznych tablic F i plansza na statystyczne

0
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char*argv[])
{
   
   unsigned short n; //deklaracja zmiennej n określającej długość planszy
   unsigned short*sposoby=new
   unsigned short[n-1]; //deklaracja tablicy, z której odczytujemy ilość sposobów na wygraną
   
   cout<<"podaj ilosc pol:"<<endl;
   cin>>n;  //wczytanie ilości pól planszy
   bool*pola=new bool[n]-1; //zadeklarowanie tablicy z polami planszy, na której określamy, gdzie są dziury
   
   cout<<"podaj pola gry:"<<endl;
   int i=0;
   do{
   std::cin>>pola[i];
   i++;
   }while(i<n); //wczytanie pół planszy
   for (int i=1; i<=n; i++){
   sposoby[i]=1;
   } //wypełnienie wszystkich pól planszy "sposoby" jedynkami
   for(int i=1; i<=n; i++){
		for(int j=1;j<=6;j++){
			if(i-j>=0){
			  if (pola[i-j]==1){
			  
				sposoby[i]=sposoby[i]+sposoby[i-j]; //obliczenie ilości sposobów wygrania w grze
				
		    	}
			         	
			}
		}
	}

    cout<<"wynik:"<<(sposoby[n-1])%1000<<endl; //wypisanie wyniku, %1000 oznacza, że wypisujemy wynik modulo 1000 
	
	 system("pause");
	 return EXIT_SUCCESS;
	} 
Zad 1. Dziurawa plansza.
Na planszy o n polach (ponumerowanych od 1 do n) soi pionek na polu o numerze 1. Niestety plansza zniszczyła się z biegiem czasu i niektóre pola (poza 1 i n) są dziurawe. Jeden gracz wielokrotnie rzuca kostką sześcienną i przesuwa pionek o liczbę pól wskazaną na kostce (1,2,…, 6). Gra kończy się gdy:
•	pionek stanie na polu o numerze n (meta) – wtedy racz wygrywa,
•	pionek wpadnie w dziurę lub wyjdzie poza planszę – wtedy gracz przegrywa.
Napisz program obliczający liczbę różnych rozgrywek (ciągów wyników rzutu kostką) prowadzących do wygranej. 
Program powinien pobierać następujące dane w kolejnych liniach:
•	n – wielkość planszy 1<n<1000000
•	p1 p2 p3… pn – n cyfr 1 lub 0 (bez spacji) określających występowanie dziur na planszy (0 oznacza dziurę na i-tym miejscu)

Program powinien zwracać liczbę sposobów, na jaką można dojść z pola 1 do pola n, nie wpadając do dziury. 
Np. dla danych:
7
1101001
Poprawną odpowiedzią jest: 4
Usprawnienie 1*. Zadbaj o typy używanych zmiennych tak, aby zużywać tylko niezbędną ilość pamięci. 
Usprawnienie 2*. Obliczaj wyniki mod 1000, dzięki temu nie przekroczysz zakresu zmiennej zawierającej wynik. 
0
  1. Pytanie nie pasuje do kodu
  2. Kod nie pasuje do C++
  3. tablica statystyczna w C++ nie występuje

1 użytkowników online, w tym zalogowanych: 0, gości: 1