#include #include #include int main() { long long unused, stitch, startend; std::cin >> unused >> stitch >> startend; std::string w, p; std::cin >> w; std::cin >> p; std::map cost; std::map last_used; for(char l : w) { cost[l] = 0; last_used[l] = -1000000000; } for(int i = 0; i < p.size(); i++) { char l = p[i]; cost[l] += stitch + std::min(2 * startend, (i - last_used[l] - 1) * unused); last_used[l] = i; } for(char l : w) { std::cout << cost[l] << std::endl; } return 0; }