설명:
작년 수학 수업에서 숙제를 할 때 다이아몬드 퍼즐이라는 똑같은 성가신 질문이 있지만 때로는 매우 간단합니다. 이것들은 기본적으로 우리에게 합계가 주어질 질문이며, 곱하면 곱할 때와 더할 때 합계를주는 두 숫자를 찾아야했습니다. (대수 I에서) 그것들을 해결하는 방법을 알고있는 유일한 방법은 제품의 요인을 나열한 다음 합계를 만들기 위해 추가 한 요인을 확인하는 것이기 때문에 이들은 나를 미치게했습니다. (당시에는 Quadratics를 사용하는 방법을 몰랐기 때문에) 정확하게 수학에 도전하는 것은 아닙니다. 그러나 방금 프로그램을 작성해야한다는 것이 나에게 일어났습니다. 이것이 오늘의 도전입니다! 다이아몬드 퍼즐을 풀 수있는 프로그램을 작성하십시오.
예
흐릿한 이미지에 대한 사과, 내가 찾은 최고의 것. 또한 거품의 숫자는 무시하십시오. 다이아몬드의 상단은 제품이고, 하단은 합계이며, 오른쪽과 왼쪽은 두 숫자입니다. 답변은 다음과 같습니다. (이것은 테스트 사례이기도합니다)
- 9, -7
- -2, -1
- 5, 8
- -9, -9
규칙 :
- 이를 위해 사전 정의 된 함수 나 클래스를 사용할 수 없습니다.
- 코드는 완전한 프로그램이거나 답을 찾으면 답을 반환하거나 인쇄하는 함수 여야합니다.
- 입력 값은 함수 매개 변수 또는 사용자 입력으로 입력되는 합계 및 곱입니다.
명세서:
- 두 숫자, 합계 및 곱은 항상 정수라고 가정하십시오.
- 두 답변은 모두 -127에서 127 사이입니다.
- 입력은 두 개의 정수 (Sum 및 Product)입니다.
이것이 코드 골프임을 기억하십시오. 그래서 가장 짧은 바이트 수가 이깁니다. 표준 ## 언어 이름, 바이트 수로 답변 제목을 지정하십시오.
편집 : 또한 Doorknob은 이것이 본질적으로 "x ^ 2 + bx + c 형식의 2 차 요소를 고려합니다"라고 지적했습니다. 이것이이 도전에 대해 생각하고 접근하는 또 다른 방법입니다. :디
(x + n)(x + m)는 당신을 제공 x^2 + (n+m)x + (n*m)하므로 이차를 고려 하면 기본적 으로이 질문과 동일합니다 (내가 올바르게 이해하고 있다면).



x^2 + bx + c"입니다. 맞습니까?