计算在手机上输入一个字符串需要多长时间、
同一个键上的字符需要 等待w时间。 空格键不用等。
按一次键需要p时间。
#include<iostream>
#include<cstdio>
#include<string>
using namespace std;
int Button(char c)
{
if(c==' ') return 1;
if( 'A'<=c && c<='O' ) return (c-'A')/3+2;
else if( 'P'<=c && c<='S' ) return 7;
else if( 'T'<=c && c<='V' ) return 8;
else if( 'W'<=c && c<='Z' ) return 9;
}
char first[10]={0,' ','A','D','G','J',
'M','P','T','W'};
int Hits(char c)
{
return c-first[Button(c)]+1;
}
int main(int argc, const char *argv[])
{
int t;
int p,w;
string line;
cin>>t;
while(t--){
cin>>p>>w; getchar();
getline(cin,line);
int cnt = 0;
int preButton = 0;
int curButton ;
for( int i=0;i<line.size();i++){
curButton = Button(line[i]);
if(curButton!=1 && curButton == preButton ) cnt += w;
cnt += p * Hits(line[i]);
preButton = curButton;
}
cout<<cnt<<endl;
}
//system("pause");
return 0;
}