chenyonken 2016-02-04 08:17 采纳率: 0%
浏览 1354
已采纳

(杭电1005)为什么第二个结果错了,是5不是1:a %= 7,b %= 7;这一句是什么作用

#include
int main()
{
int f[53], i, a, b, n;
while(scanf("%d%d%d", &a, &b, &n))
{
if (a ==0&&b ==0&&n == 0)
break;
if ((n == 1 )|| (n == 2))

    {
        printf("1\n");
        continue;
    }
    f[1] = 1,f[2] = 1;
    a %= 7,b %= 7;
    for (i = 3; i <= 52; i++)
    {
        f[i] = (a*f[i - 1] + b*f[n - 2]) % 7;
        if ((f[i] == 1) && (f[i - 1] == 1))break;
    }
    i = i - 2;
    n %= i;
    f[0] = f[i];
    printf("%d\n", f[n]);
}

}图片说明


  • 写回答

1条回答 默认 最新

  • ysuwood 2016-02-04 08:30
    关注
     f[i] = (a*f[i - 1] + b*f[n - 2]) % 7;//n错了吧?是i?
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 comsol稳态求解器 找不到解,奇异矩阵有1个空方程返回的解不收敛。没有返回所有参数步长;pid控制
  • ¥15 怎么让wx群机器人发送音乐
  • ¥15 fesafe材料库问题
  • ¥35 beats蓝牙耳机怎么查看日志
  • ¥15 Fluent齿轮搅油
  • ¥15 八爪鱼爬数据为什么自己停了
  • ¥15 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功