#include int main () { std::ios::sync_with_stdio(false); int N, M, Q; std::cin >> N >> M >> Q; std::string line; // simulate snow falling std::vector> arr; std::stack stack; for (int i = 0; i < M; ++i) arr.push_back(stack); for (int i = 0; i < N; ++i) { std::cin >> line; for (int j = 0; j < M; ++j) { arr[j].push(line[j]); } } // simulate snow std::vector snow (M + 1, 0); // initial snow at time t = 0 for (int i = 0; i < M; ++i) { char val; int new_val = 0; while(!arr[i].empty()) { val = arr[i].top(); if (val == '*') { new_val += 1; arr[i].pop(); } else break; } snow[0] += new_val; } // simulate snow bool flag = true; int time = 1; while (flag) { flag = false; for (int i = 0; i < M; ++i) { int new_val = 0; while(!arr[i].empty()) { flag = true; //char val = arr[i].top(); arr[i].pop(); //std::cout << "val: " << val << std::endl; while(!arr[i].empty() && arr[i].top() == '*') { new_val += 1; arr[i].pop(); } break; } snow[time] += new_val; } snow[time] += snow[time - 1]; time ++; } for (int i = 0; i < Q; ++i) { int input; std::cin >> input; if (input < time) std::cout << snow[input] << std::endl; else std::cout << snow[time -1] << std::endl; } //for (int i = 0 ; i < time; ++i) //std::cout << "T: " << i << " val:" << snow[i] << std::endl; return 0; }