⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 [1005]nunber sequence.cpp

📁 HDUOJ_ACM题目集合~~希望各位能用得上
💻 CPP
字号:
// [1005]Nunber Sequence.cpp : 定义控制台应用程序的入口点。
//

#include <iostream>
using namespace std;

int mark[9][9];
int stack[51];
int stacktop;
int a, b, n;

int find()
{
	int i, begin, loop;
	memset (mark,-1,sizeof(mark));
	stacktop = 3;
	stack[1]=stack[2]=1;
	mark[1][1] = 2;

	while (stacktop <= n)
	{
		i = stacktop;
		stack[stacktop++] = (stack[i-1] * a + stack[i-2] * b)%7;
		if (mark[stack[i]][stack[i-1]] == -1)
		{
			mark[stack[i]][stack[i-1]]=i;
		}
		else
		{
			begin = mark[stack[i]][stack[i-1]];
			loop = i - begin;
			n = (n - begin) % loop + begin;
			break;
		}
	}
	return stack[n];
}

int main()
{
	while (cin>>a>>b>>n && (a!=0&&b!=0&&n!=0))
	{
		cout<<find()<<endl;
	}
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -