zoukankan      html  css  js  c++  java
  • Hdu 1005 Number Sequence

    Number Sequence

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
    Total Submission(s): 173150    Accepted Submission(s): 42786

    Problem Description

    A number sequence is defined as follows:

    f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.

    Given A, B, and n, you are to calculate the value of f(n).

    Input

    The input consists of multiple test cases. Each test case contains 3 integers A, B and n on a single line (1 <= A, B <= 1000, 1 <= n <= 100,000,000). Three zeros signal the end of input and this test case is not to be processed.

    Output

    For each test case, print the value of f(n) on a single line.

    Sample Input

    1 1 3

    1 2 10

    0 0 0

    Sample Output

    2

    5

    # include <stdio.h>
    # include <string>int fun(int a, int b, int n){
        if (n==1)
            return 1;
        else if(n==2)
            return 1;
        else
            return (a*fun(a, b, n-1)+b*fun(a, b, n-2))%7;
    }
    
    int main(){
        int a, b, n;
        while(scanf("%d%d%d",&a,&b,&n)){
            if(a == 0 && b == 0 && n == 0)
                break;
            else
            printf("%d
    ",fun(a, b, n%49));
        }
        system("pause");
        return 0;
    }
    

      

  • 相关阅读:
    c++ 迷宫问题
    linux下恢复删除的文件
    c++ 分解数2
    c++ 平分石头
    多态
    设计模式中类的6种关系
    工厂方法模式
    设计原则之面向接口编程
    封装、继承
    便利构造器、单件模式
  • 原文地址:https://www.cnblogs.com/zhangliu/p/7057771.html
Copyright © 2011-2022 走看看