问题 4593 --真假难辨

4593: 真假难辨

时间限制: 3 Sec  内存限制: 256 MB
提交: 0  解决: 0
[提交][状态][讨论版][命题人:]

题目描述

即使是计算机领域的一个无名小卒都清楚的知道,在计算机内部是以二进制的方式执行运算的。“真”是计算机语言中基础类型之一,它通常表示确定,正面,真值,用TURE(1)来表示。其相反“假”用FALSE(0)表示。而且众所周知,非真即假,非假即真。
 
Alice和Bob在认识到这一点以后,非常想用这简单的理论难住对方,于是他们各自出题给对方。
Alice说:“在一个恰好有N条语句的列表中,第k条(1<=k<=N)语句是‘在这个列表中,恰好有k条语句为假。’你能猜出哪条真哪条假么?”
Bob说:“我的问题只是把‘恰好有k条语句为假’改为‘至少有k条语句为假’。那你能猜出答案么?”
 

Alice和Bob陷入了深深的纠结之中,于是请你来帮助他们分析和解答。

输入

第一行包含一个整数T(1<=T<=100),表示测试数据组数。
对于每次测试数据,只包含一个整数N(1<=N<=1000),表示这个列表中语句的总条数。

输出

对于每组测试数据包含若干行。
第一行输出Alice提出问题的答案。第二行输出Bob提出问题的答案。
对于每行,如果题目是一个悖论,只输出“No Solution”;如果题目有多组解,输出 “Multiple Solutions”;如果题目有唯一解,则需输出N个数(值为1或0)表示第i(1<=i<=N)条语句的真假,每两个数用空格隔开。
 

在每两组测试数据之间输出一个空行。

样例输入

1
2

样例输出

1 0
1 0

来源

NB 

[提交][状态]