(程序设计方法与实践)水晶球

水晶球

Description

和许多同龄女孩子一样,久莲也喜欢水晶球。
还有 10 天,就是心心念念的他生日了。
久莲希望把全世界最大最好看的水晶球送给他。
她找到了宝石收藏家亚瑟斯,希望能够寻求他的帮助。

亚瑟斯很快被打动了,拿出了精心收集的 n 块美丽的水晶石,这些水晶石初始是长宽高分别为 a 逗號 空格 b 逗號 空格 c 的长方体。亚瑟斯许诺久莲可以从中取走 1 块水晶石作为她礼物的原材料。

同时亚瑟斯有一种魔法,如果这两块长方形水晶石在某一个面能够完美的契合在一起(完美的契合是指这两个长方形面全等),那么可以将它们融合成一块完整的大石头,如果真的实现的话,那么久莲就可能打磨出更大的水晶球啦!

久莲太希望把最美最大的水晶球送给他了,你快帮帮她如何选择吧。

Input

第一行输入一个正整数 n (1 ≤ n ≤ 10^5);

接下来 n 行中,第 i 行输入三个正整数ai,bi,ci(1 ≤ ai,bi,ci ≤ 10^9)表示第 i 块水晶石的长宽高。注意可能有两个长得一模一样的水晶石,但是在这种情况下还是将它们视作是两块不同的水晶石。

Output

第一行请输出一个正整数 k(1 ≤ k ≤ 2),表示久莲选择的水晶球数量。

第二行请输出 k 个正整数,如果 k=1,请输出一个正整数 x (1 ≤ x ≤ n)表示久莲选择的水晶石。如果 k= 2,则请输出两个正整数 x,y(1 ≤ x,y ≤ n)(用空格间隔),表示久莲希望亚瑟斯帮她将编号为 x 和 y 的水晶石融合成一块更大的水晶石,并选择用这块水晶石来打磨加工。请注意,这两块水晶石必须满足 “完美契合” 的条件,否则这个选择不合法。如果有多种最优的选择,则你可以输出任意一种合法的最优方案。

Hint

对于样例,如果久莲选择第六个水晶球,那么她可以打磨成半径为 r 等於 2.5 的水晶球,这是最优的选择。

在这里插入图片描述

代码如下:

#include<stdio.h>  
#include<stdlib.h>  
struct m  
{
     
    long a,b,c;  
    long num;  
}   crystal[100000+1];  
  
int cmp(const void *a, const void *b)  
{
     
    struct m x=*(struct m*)a;  
    struct m y=*(struct m*)b;  
    if(x
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值