D.Operator Precedence

题目样例似乎提供了一些虚无缥缈的思路,但我们的思维不应当局限于此。
若尝试另辟蹊径,答案便呼之欲出了。

点击查看代码
#include <bits/stdc++.h>
using namespace std;
int read1()
{
	char cc=getchar();
	while(!(cc>=48&&cc<=57))
	{
		if(cc=='-')
		{
			break;
		}
		cc=getchar();
	}
	bool f=false;
	int s=0;
	if(cc=='-')
	{
		f=true;
	}
	else
	{
		s=cc-48;
	}
	while(1)
	{
		cc=getchar();
		if(cc>=48&&cc<=57)
		{
			s=s*10+cc-48;
		}
		else
		{
			break;
		}
	}
	if(f==true)
	{
		s=-s;
	}
	return s;
}
int main()
{
	/*
	for(int i=-10;i<=10;i++)
	{
		for(int j=-10;j<=10;j++)
		{
			for(int k=-10;k<=10;k++)
			{
				if(2*j-2==j*k&&2*i+4-k==i*k)
				{
					cout<<i<<' '<<j<<' '<<k<<endl;
				}
			}
		}
	}
	*/
	int T;
	cin>>T;
	while(T--)
	{
		int n=read1();
		printf("%d",-3+2*n);
		for(int i=2;i<=2*n-1;i++)
		{
			if(i%2==0)
			{
				printf(" 2");
			}
			else
			{
				printf(" -1");
			}
		}
		printf(" 1\n");
	}
	return 0;
}
posted @ 2024-01-21 16:07  D06  阅读(28)  评论(0编辑  收藏  举报