当前位置: 代码迷 >> C语言 >> 谁能给我点意见 我的超时
  详细解决方案

谁能给我点意见 我的超时

热度:131   发布时间:2007-11-15 12:16:02.0
这题的意思是 如果用1--26表示A-Z 则输入一组数据11235
会有多少种表示输出 如11可表示AA 也可表示K两种
所以输出2
----------------解决方案--------------------------------------------------------
过了
#include <stdio.h>
#include <string.h>
char s[5000];
int main()
{
   int n1,n2,i,temp;
   while(scanf("%s",s)&s[0]!='0')
   {
      n1=0;n2=1;
      for(i=strlen(s)- 1;i>=0;i--)
      {
         if(s[i]>'2'||(s[i]=='2'&&s[i+1]>'6'))    n1=n2;
        else if(s[i]=='0')          {    n1=0;     i--;  }
        else
        {   temp=n2;   n2=n1+n2;     n1=temp;   }
      }
      printf("%d\n",n2);
   }
   return 0;
}
----------------解决方案--------------------------------------------------------
我来翻译


alphacode
描述
艾丽斯和鲍勃必要派遣秘密信息,以相互借鉴,是在讨论如何编码的讯息:
爱丽丝说: "让我们只是用一个很简单的代码:我们将指派' '暗语1 , '的b将于2 ,所以就到' z '的委派26 " 。
鲍勃说: " that'sa愚蠢的代码,爱丽丝。假如我送你两个字'豆腐'编码为25114 。你可以解码,在许多不同的方法" !
爱丽丝说: "相信你能做到,但有什么话你会得到吗?其他比'豆' ,你会得到' beaad ' , ' yaad ' , '严' , ' ykd '和' bekd ' 。我想,你便可以计算出正确的解码。为什么你送我的字, '豆腐'反正" ?
鲍勃: "好吧,也许that'sa坏榜样,但我打赌的是,如果你得到一个字符串的长度500会有吨的不同解读,并与许多你会发现至少有两种不同的这将使意义" 。
爱丽丝说: "有多少个不同的解读" ?
鲍勃说: " jillions " !
由于某些原因,爱丽丝仍不服bob的说法,所以她需要一个计划,这计划将确定有多少解读可以有某一特定的字符串用她的代码。


投入

投入将包括多输入集。每套将包括建立一个单一的数字,代表一
有效的加密功能(例如,没有线,将首先以一个0 ) 。将不会有任何空间之间的个位数。
输入线'0 '将终止投入,并应不予以办理


输出

为每个输入集,输出的数量可能解读为输入字符串。所有答案将
范围内,随着一个长期的变数。


样品输入


25114
1111111111
3333333333
0


样本输出



89
1
----------------解决方案--------------------------------------------------------
LS的英语这么好............英语我看不懂~
----------------解决方案--------------------------------------------------------
  相关解决方案