Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdio>
- #include <cstring>
- using namespace std;
- #define MAX_TAM 600
- char Ni[20];
- int table[MAX_TAM][MAX_TAM], ans, T, Q;
- void solve_for_this (int l, int c, int len, int tam)
- {
- if (l < 0 || l > T - 1 || c < 0 || c > T - 1)
- return;
- if (table[l][c] != (int) Ni[tam - 1] - '0')
- return;
- if (tam == len)
- ans++;
- solve_for_this (l + 1, c, len, tam + 1);
- solve_for_this (l - 1, c, len, tam + 1);
- solve_for_this (l, c + 1, len, tam + 1);
- solve_for_this (l, c - 1, len, tam + 1);
- }
- void input ()
- {
- int len = 0;
- scanf ("%d", &T);
- for (int k = 0; k < T; k++)
- for (int i = 0; i < T; i++)
- scanf ("%d", &table[k][i]);
- scanf ("%d", &Q);
- for (int k = 0; k < Q; k++)
- {
- ans = 0;
- scanf ("%s", Ni);
- len = strlen (Ni);
- for (int j = 0; j < T; j++)
- for (int i = 0; i < T; i++)
- solve_for_this (j, i, len, 1);
- printf ("%d\n", ans);
- }
- }
- int main ()
- {
- input ();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement