HDU1005

来源:互联网 发布:佛山数控编程培训机构 编辑:程序博客网 时间:2024/06/01 09:23
package com.hdu;import java.util.Scanner;/** * Created by jiajia on 2017/8/2/002 *///hdu1005public class NumberSequence {    public static void main(String[] args) {        Scanner input = new Scanner(System.in);        boolean flag = true;        while (input.hasNext()) {            int A = input.nextInt();            int B = input.nextInt();            int n = input.nextInt();            if (A == 0 && B == 0 && n == 0) {                System.exit(0);            } else if (A < 1 & A > 1000 & B < 1 & B > 1000 & n < 1 & n > 100000000) {                System.exit(0);            }else{                int f[] = new int[50];                for (int i = 1; i < 50; i++) {                    if (i == 1 || i == 2) {                        f[i] = 1;                    } else {                        f[i] = (A * f[i - 1] + B * f[i - 2]) % 7;                    }                }                System.out.println(f[n % 49]);            }        }    }

直接用递归做,当n超级大的时候内存不够,所以找规律,把7*7个数存起来,再直接用。

原创粉丝点击