余晖~
2022-02-23 16:39
采纳率: 92%
浏览 26

蓝桥杯上一道 平面切分的,答案解析有一个地方不太懂

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
n = eval(input())
line = [tuple(map(int,input().split(" "))) for i in range(n)]
se = set(line)
line = list(se)  #去重后的线
if line:
    ans=2
    for i in range(1,len(line)):
        a1,b1=line[i]
        pos=set()
        for j in range(i):
            a2,b2=line[j]
            if a1==a2:
                continue
            x=(b1-b2)/(a1-a2)     #从这里开始,它到底是怎么计算的,看不太懂
            y=a1*x+b1
            pos.add((x,y))
        ans += len(pos)+1
print(ans)

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

相关推荐 更多相似问题