n, k = gets.split.map(&:to_i)
r, s, p = gets.split.map(&:to_i)
point = {"r"=>p, "s"=>r, "p"=>s}
t = []
k.times{ t << Array.new }
gets.chomp.chars.each_with_index{|c,i| t[i%k] << c }
ans = 0
t.each{|tt|
  flag = true
  ans += tt.map.with_index{|ti,i|
    flag = !flag if (i!=0 && tt[i-1]==ti) || (!flag)
    ((i!=0 && tt[i-1]!=ti) || flag) ? point[ti] : 0
  }.inject(:+)
}
p ans
