solution-uva1594

题解 UVA1594 【Ducci序列 Ducci Sequence】

原题

简单模拟

值得压行注意的是an和a1的减法

从头到尾扫的话an-a1时a1的值已经被改变

那我们就可以一开始把a1的值存到an+1

代码

// 此处应有头文件
int n,t;
int a[20];
bool check() // 检测是否全0
{
	for(int i = 1;i <= n;i++)
		if( a[i] )
			return false;
	return true;
}
int main()
{
    cin >> t;
    while(t--)
    {
    	cin >> n;
    	for(int i = 1;i <= n;i++)
    		cin >> a[i];
    	int k = 1e3; // 1000
    	while(--k)
    	{
    		a[n + 1] = a[1];
    		for(int i = 1;i <= n;i++)
    			a[i] = abs( a[i] - a[i + 1] );
    		if( check() )
    			break;
		}
		if(!k)
			puts("LOOP");
		else
			puts("ZERO");
	}
    return 0;
}
posted @ 2024-03-07 07:44  iorit  阅读(31)  评论(0)    收藏  举报