1 条题解

  • 0
    @ 2025-4-14 18:43:47

    C :

    #include<stdio.h>
     int main()
    {   
    	char a;
    	int t;
    	while(1)
    	{
    		a=getchar();
    		switch(a)
    		{
    		case ' ':t=1;printf("%d",t);break;
    		case 'a':t=2;printf("%d",t);break;
    		case 'b':t=22;printf("%d",t);break;
    		case 'c':t=222;printf("%d",t);break;
    		case 'd':t=3;printf("%d",t);break;
    		case 'e':t=33;printf("%d",t);break;
    		case 'f':t=333;printf("%d",t);break;
    		case 'g':t=4;printf("%d",t);break;
    		case 'h':t=44;printf("%d",t);break;
    		case 'i':t=444;printf("%d",t);break;
    		case 'j':t=5;printf("%d",t);break;
    		case 'k':t=55;printf("%d",t);break;
    		case 'l':t=555;printf("%d",t);break;
    		case 'm':t=6;printf("%d",t);break;
    		case 'n':t=66;printf("%d",t);break;
    		case 'o':t=666;printf("%d",t);break;
    		case 'p':t=7;printf("%d",t);break;
    		case 'q':t=77;printf("%d",t);break;
    		case 'r':t=777;printf("%d",t);break;
    		case 's':t=7777;printf("%d",t);break;
    		case 't':t=8;printf("%d",t);break;
    		case 'u':t=88;printf("%d",t);break;
    		case 'v':t=888;printf("%d",t);break;
    		case 'w':t=9;printf("%d",t);break;
    		case 'x':t=99;printf("%d",t);break;
    		case 'y':t=999;printf("%d",t);break;
    		case 'z':t=9999;printf("%d",t);break;
    		case '\n':printf("\n");return 0;
    		}
    		
    	}
    			 return 0;
     }
    
    

    C++ :

    #include<iostream>
    #include<map>
    using namespace std;
    int main()
    {
        map<char,string>m;
        m[' ']="1";
        m['a']="2";m['b']="22";m['c']="222";
        m['d']="3";m['e']="33";m['f']="333";
        m['g']="4";m['h']="44";m['i']="444";
        m['j']="5";m['k']="55";m['l']="555";
        m['m']="6";m['n']="66";m['o']="666";
        m['p']="7";m['q']="77";m['r']="777";m['s']="7777";
        m['t']="8";m['u']="88";m['v']="888";
        m['w']="9";m['x']="99";m['y']="999";m['z']="9999";
        string s,str;
        while(getline(cin,s))
        {
            str="";
            for(int i=0;i<s.size();i++)
                str+=m[s[i]];
            cout<<str<<endl;
        }
        return 0;
    }
    
    

    Pascal :

    var
     s1,s2:ansistring;
     i,j,x,y:longint;
     c:char;
    begin
     readln(s1);
     for i:=1 to length(s1) do
      if s1[i]=' ' then s2:=s2+'1'
       else
        begin
         x:=(ord(s1[i])-1)mod 3+1;
         y:=(ord(s1[i])-1)div 3;
         c:=chr(y+18);
         for j:=1 to x do
          s2:=s2+c;
        end;
     writeln(s2);
    end.
    
    • 1

    信息

    ID
    3242
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者