鱼C论坛

 找回密码
 立即注册
查看: 1399|回复: 3

[已解决]python的箱子匹配问题

[复制链接]
发表于 2022-3-28 17:50:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
题目描述

每个箱子都有长宽高,我们需要判断一个箱子能否放入另一个箱子中。

例如有箱子A的尺寸是 3 x 4 x 5,箱子B的尺寸 是 5 x 6 x 4,经过比较判断,可以知道箱子A能够放入箱子B中,我们就说箱子A匹配箱子B。

注意,当两个箱子尺寸相等,我们也认为它们匹配。


输入

第一行输入参数T,表示有T个测试实例

第二行输入第1组实例的箱子A的长、宽、高,输入数值为小于1000的自然数

第三行输入第1组实例的箱子B的长、宽、高,输入数值为小于1000的自然数

以此类推


输出

如果两个箱子匹配,输出yes,否则输出no。逐行输出每一组的箱子匹配结果。

最佳答案
2022-3-28 19:51:11
  1. class Box:
  2.     def __init__(self, L, W, H):
  3.         self.L = L
  4.         self.W = W
  5.         self.H = H

  6. def isValid(boxA, boxB):
  7.     A = [boxA.L, boxA.W, boxA.H]
  8.     B = [boxB.L, boxB.W, boxB.H]
  9.     A.sort()
  10.     B.sort()
  11.     for i, size in enumerate(B):
  12.         if(A[i] > size):
  13.             return "no"
  14.     return 'yes'
  15.    
  16. L, W, H = map(int, input().split())
  17. boxA = Box(L, W, H)

  18. L, W, H = map(int, input().split())
  19. boxB = Box(L, W, H)

  20. print(isValid(boxA, boxB))
复制代码
  1. 3 4 5
  2. 5 6 4
  3. yes
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-3-28 17:57:25 | 显示全部楼层
思路,把箱子A和B的尺寸都进行从小到大排序,然后一一对应比较,均为小于等于即输出yes,代码没什么难度吧
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-28 18:19:20 | 显示全部楼层
wiselin 发表于 2022-3-28 17:57
思路,把箱子A和B的尺寸都进行从小到大排序,然后一一对应比较,均为小于等于即输出yes,代码没什么难度吧

就是说,我是新手,这个思路我有,但是代码不会写
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-28 19:51:11 | 显示全部楼层    本楼为最佳答案   
  1. class Box:
  2.     def __init__(self, L, W, H):
  3.         self.L = L
  4.         self.W = W
  5.         self.H = H

  6. def isValid(boxA, boxB):
  7.     A = [boxA.L, boxA.W, boxA.H]
  8.     B = [boxB.L, boxB.W, boxB.H]
  9.     A.sort()
  10.     B.sort()
  11.     for i, size in enumerate(B):
  12.         if(A[i] > size):
  13.             return "no"
  14.     return 'yes'
  15.    
  16. L, W, H = map(int, input().split())
  17. boxA = Box(L, W, H)

  18. L, W, H = map(int, input().split())
  19. boxB = Box(L, W, H)

  20. print(isValid(boxA, boxB))
复制代码
  1. 3 4 5
  2. 5 6 4
  3. yes
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-29 12:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表