Patró en una matriu P64919


Statement
 

pdf   zip   main.cc

Usant les defincions

    typedef vector<char> Fila;
    typedef vector<Fila> Matriu;

implementeu una funció

    int patro(const Matriu& P, const Matriu& M);

que digui quantes vegades apareix el patró @P@ dins de la matriu @M@. Es garanteix que les dues matrius són rectangulars. A més, si @P@ té dimensions f1×c1f_1 \times c_1 i @M@ té dimensions f2×c2f_2 \times c_2, llavors es compleix que 1f1f2501 \le f_1 \le f_2 \le 50 i que 1c1c2501 \le c_1 \le c_2 \le 50.

Per exemple, el patró 2×32 \times 3 de l’esquerra apareix dues vegades a la matriu 3×43 \times 4 de la dreta. $$\left( \begin{array}{ccc} \mbox{a} & \mbox{b} & \mbox{b} \\ \mbox{b} & \mbox{b} & \mbox{c} \end{array} \right) \hspace*{4cm} \left( \begin{array}{cccc} \mbox{a} & \mbox{a} & \mbox{b} & \mbox{b} \\ \mbox{a} & \mbox{b} & \mbox{b} & \mbox{c} \\ \mbox{b} & \mbox{b} & \mbox{c} & \mbox{a} \end{array} \right)$$

Si us cal, podeu implementar procediments auxiliars.

Pista

La solució esperada d’aquest problema senzillament comprova el patró a totes les possibles posicions de la matriu.

Observació

Només cal enviar el procediment demanat; el programa principal serà ignorat.

Information
Author
Jordi Cortadella
Language
Catalan
Other languages
English
Official solutions
C++
User solutions
C++