杭电OJ-1005

注:本题直接做内存有点不够用,可以发现,结果都是mod7,所以变化范围也就在0~6,所以会出现7*7种情况,之后再有就又循环回来了

#include <cstdio>
int main(void){
	int a, b, n;
	while(scanf("%d%d%d", &a, &b, &n) != EOF, 
				!(a == 0 && b == 0 && n == 0)){
		int arr[50];
		arr[1] = 1, arr[2] = 1;
		for(int i = 3; i < 50; i++){
			arr[i] = (a*arr[i-1] + b*arr[i-2]) % 7;
		}
		
		printf("%d\n", arr[n%49]);
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_42067873/article/details/106887114