1051: 手机(MOBILE)

#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <string>
using namespace std;
int main(){
    char s;
    int k = 0;
    int count = 0;
    //for(int i=0 ; i < s.length(); i++)
    while(s = cin.get())
    {
    //    k++;
    //    if(k>200)
    //        break;
        if(s == '
')
            break;
        switch(s)
        {
            case 'a':
            case 'd':
            case 'g':
            case 'j':
            case 'm':
            case 'p':
            case 't':
            case 'w':
            case ' ':
                count+= 1;
                break;
            case 'b':
            case 'e':
            case 'h':
            case 'k':
            case 'n':
            case 'q':
            case 'u':
            case 'x':
                count += 2;
                break;
        
            case 'c':
            case 'f':
            case 'i':
            case 'l':
            case 'o':
            case 'r':
            case 'v':
            case 'y':
                count += 3;
                break;
            case 's':
            case 'z':
                count += 4;
                break;            
        }
    }
    cout<<count<<endl;
    
//    cout<<setiosflags(ios::fixed)<<setprecision(4)<<s<<endl;
//    cout<< setiosflags(ios::fixed)<<setprecision(4) <<c<<endl; 
}

http://oj.lcsyzx.cn/JudgeOnline/problem.php?id=1051

#include<iostream>
#include<string>
using namespace std;
int num[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 x;
string s;
int main(){
    getline(cin,s);
    for(int i=0;i<s.size();i++)x+=s[i]==' '?1:num[s[i]-'a'];
    cout<<x<<endl;
    return 0;
}
原文地址:https://www.cnblogs.com/shiningrise/p/6502329.html