Loading...
numenorsky avatar numenorsky 3 Точки

Задача 03. Longer Line (Python Fundamentals - Exercise: Functions, More Exercise)

Здравейте,

Сега пък имам затруднения със задача 3. Longer Line (Python Fundamentals - Exercise: Functions, More Exercise) получавам 60/100 в Judge.
 

3. Longer Line
You are given the coordinates of four points in the 2D plane. The first and the second pair of points form two
different lines. Print the longer line in format "(X1, Y1)(X2, Y2)" starting with the point that is closer to the center of
the coordinate system (0, 0) (You can reuse the method that you wrote for the previous problem). If the lines are of
equal length, print only the first one. The resulting coordinates must be formated to the lowest integer.

Examples
Input 
2
4
-1
2
-5
-5
4
-3

Output
(4, -3)(-5, -5)

https://judge.softuni.bg/Contests/Practice/Index/1729#2

Моля ако е възможно, колега който е решил задачата да погледне решението ми тук:

https://pastebin.com/giBwbTis

и да ми даде насоки, къде греша.

Поздрави :-)

Тагове:
0
Python Fundamentals 19/10/2020 11:57:53
IvanNankov95 avatar IvanNankov95 8 Точки
from math import floor

x1 = float(input())
y1 = float(input())
x2 = float(input())
y2 = float(input())
x3 = float(input())
y3 = float(input())
x4 = float(input())
y4 = float(input())

def distance(_x1, _y1, _x2, _y2):
    return (_x2-_x1)**2 + (_y2-_y1)**2

x1y1 = distance(x1, y1, 0, 0)
x2y2 = distance(x2, y2, 0, 0)
x3y3 = distance(x3, y3, 0, 0)
x4y4 = distance(x4, y4, 0, 0)

line_1 = x1y1 + x2y2
line_2 = x3y3 + x4y4

if line_1 >= line_2:
    if x1y1 <= x2y2:
        print(f'({floor(x1)}, {floor(y1)})({floor(x2)}, {floor(y2)})')
    else:
        print(f'({floor(x2)}, {floor(y2)})({floor(x1)}, {floor(y1)})')
if line_1 < line_2:
    if x3y3 <= x4y4:
        print(f'({floor(x3)}, {floor(y3)})({floor(x4)}, {floor(y4)})')
    else:
        print(f'({floor(x4)}, {floor(y4)})({floor(x3)}, {floor(y3)})')

Примерно решение :)

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.