1188: Pесторан [思维]
时间限制: 2 Sec 内存限制: 128 MB Special Judge提交: 777 解决: 276 统计
题目描述
听说,只有英语满级的人才认识Pесторан这个单词。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
HPU有四个餐厅,分别是学苑、学府、学士、学子餐厅,简称一餐、二餐、三餐、四餐。
往常吃饭的时候,各餐厅拥挤度由高到低普遍是:一餐、二餐、三餐、四餐。假设Ocean在计算机科学与技术学院,他前往四个餐厅吃饭并返回学院分别需要时间。
Ocean作为一个多年的老司机,他认为满足一个等式即
。
现在Ocean只确定了 N 的大小,他想知道是否存在一个三元组(a,b,c)
(a,b,c)满足
,其中 均是正整数且满足
。
,其中 均是正整数且满足
。
输入
第一行输入一个整数
,代表有 T 组测试数据。
每组数据输入一个整数。
注:。
,代表有 T 组测试数据。
每组数据输入一个整数。
注:。
输出
对每组测试数据,若不存在合法的三元组,请输出 −1 。
若存在多个合法的三元组,你可以输出任意一组,其中和b、
和
之间必须有一个空格。
样例输入
2
6
9
样例输出
2 2 2
2 3 4
解析:
特判1,2输出-1 其余情况统一输出1 1 n-2;
程序如下:
#include<cstdio> typedef long long LL; int main() { int t; scanf("%d",&t); while(t--) { LL n; scanf("%lld",&n); if(n==1||n==2) printf("-1\n"); else printf("1 1 %lld\n",n-2); } return 0; }