qq_34078712 2016-04-17 09:05 采纳率: 75%
浏览 1579
已采纳

杭电3555题 为啥总是Output Limit Exceeded

3555
这是我的代码:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
long long f[20][3];
long long cal(long long n)
{
long long num[20],len=1,i,j,k,sum,flag,before;
num[0]=0;
num[1]=0;
while(n)
{
num[len]=n%10;
len++;
n=n/10;
}
num[len]=0;sum=0;flag=0;
for(i=len-1;i>0;i--)
{
sum=sum+f[i-1][2]*num[i];
if(flag)
sum=sum+f[i-1][0]*num[i];
if(!flag&&num[i]>4)
sum=sum+f[i-1][1];
if(num[i+1]==4&&num[i]==9)
flag=1;
}
return sum;
}
int main()
{
long long n,m,i,j,k,t,sum;
memset(f,0,sizeof(f));
f[0][0]=1;
for(i=1;i<=20;i++)
{
f[i][0]=f[i-1][0]*10-f[i-1][1];
f[i][1]=f[i-1][0];
f[i][2]=f[i-1][2]*10+f[i-1][1];
//cout<<f[i][2]<<endl;
}
while(scanf("%lld",&t))
{
for(i=1;i<=t;i++)
{
//cout<<"skjhgs"<<endl;
scanf("%lld",&m);
sum=cal(m+1);
printf("%lld\n",sum);
}
}
return 0;
}

  • 写回答

1条回答

  • threenewbee 2016-04-17 10:18
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 Stata 面板数据模型选择
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用