神啊,原谅我吧,我又水了…… >>空格也算时间的 #include <iostream> #include <string> using namespace std; int pos[26]={1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,6,7,7,7,8,8,8,8}; int click[26]={1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,4,1,2,3,1,2,3,4}; int main() { int t,p,w,ans,i; string s; cin >> t; while (t--) { cin >> p >> w; getline(cin,s); getline(cin,s); if (s[0]!=' ') ans=p*click[s[0]-'A']; else ans=p; for (i=1;i<s.length();i++) { if (s[i]!=' ' && pos[s[i]-'A']==pos[s[i-1]-'A']) ans+=w; if (s[i]!=' ') ans+=p*click[s[i]-'A']; else ans+=p; } cout << ans << endl; } system("pause"); return 0; }