这是给我的问题
有一天,Sindakht 和 Irsa 正在讨论笔记本电脑的价格及其质量。Sindakht 猜测笔记本电脑越贵,质量就越好。但是 Irsa 声称她可以找到 2 台价格比第一台低但质量比第二台高的笔记本电脑,她可以反驳 Sindakht 的猜测。现在,您必须编写一个程序来帮助 Irsa 调查她的主张。
n 个笔记本电脑规格会给你,第一个输入行包含数字 n,表示笔记本电脑的数量,接下来的 n 行每行包含两个数字,第一个数字表示笔记本电脑的价格,第二个数字表示笔记本电脑的质量,如果你能找到两台符合 Irsa 所述条件的笔记本电脑,打印 happy irsa,否则打印差的 irsa (请注意小写字母,所有字母都用小写)。
示例输入:
2
1 10
7 3
示例输出:
happy irsa
在样本的输入中,第一台笔记本电脑的价格为 1,质量为 10(数字越高,质量越高)。第二台笔记本电脑的价格为 7,质量为 3。好吧,Irsa 设法找到了两台笔记本电脑,尽管后者的价格高于第一台笔记本电脑的价格,但后者的质量低于第一台笔记本电脑的质量。
示例输入:
4
1 5
7 9
5 6
20 30
示例输出:
poor irsa
我尝试这个任何人都可以帮助我使它正确
n=int(input())
computer=[]
for m in range(n) :
laptop=input()
laptop=laptop.split()
computer.append(laptop)
for i in range(n) :
for j in range(2):
computer[i][j]=int(computer[i][j])
for i in range(n+1) :
if computer[i][0] < computer[i+1][0] and computer[i][1] > computer[i+1][1] :
print("happy irsa")
break
else:
print("poor irsa")
break
你需要比较每对笔记本电脑,所以你需要嵌套循环。
只有当你找到一对让 Irsa 开心的时候,你才应该跳出循环,如果你没有打破就结束了,Irsa 很难过,你可以为此使用else:
块。
irsa_happy = False
for c1 in computer:
for c2 in computer:
if c1[0] < c2[0] and c1[1] > c2[1]:
print("happy irsa")
irsa_happy = True
break
if irsa_happy:
break
else:
print("poor irsa")
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(4条)