题解 P1765 【手机_NOI导刊2010普及(10)】

· · 题解

用一个数组记录按键的次数;

不要用scanf("%s");

这样的话读到空格就停;

不用考虑'#','*';

直接看代码吧。。。

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char a[210];
int ans;
int b[27]={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()
{
    gets(a);
    int len=strlen(a);
    for(int i=0;i<len;i++)
       if(a[i]>='a'&&a[i]<='z')
          ans+=b[a[i]-'a'];
       else if(a[i]==' ')
          ans++;
    printf("%d",ans);
    //system("pause");
    return 0;
}