Given an integer **S**, the task is to find the coordinates of a triangle whose area is **(S / 2)**.

**Examples:**

Input:S = 4Output:

(0, 0)

(1000000000, 1)

(999999996, 1)

Input:S = 15Output:

(0, 0)

(1000000000, 1)

(999999985, 1)

**Approach:**

- It is know than the area of the triangle whose coordinates are
**(X1, Y1)**,**(X2, Y2)**and**(X3, Y3)**is given by**A = ((X1 * Y2) + (X2 * Y3) + (X3 * Y1) – (X1 * Y3) – (X2 * Y1) – (X3 * Y2)) / 2**. - Now fixing
**(X1, Y1)**to**(0, 0)**gives**A = ((X2 * Y3) – (X3 * Y2)) / 2**. - It is given that
**A = S / 2**which implies**S = (X2 * Y3) – (X3 * Y2)**. - Now fix
**(X2, Y2)**to**(10**and the equation becomes^{9}, 1)**S = 10**which can be solved by taking an integer value of a variable that given the integer value for the other variable.^{9}* Y3 – X3

Below is the implementation of the above approach:

## C++

`// C++ implementation of the approach` `#include <bits/stdc++.h>` `using` `namespace` `std;` `const` `long` `MAX = 1000000000;` `// Function to find the triangle` `// with area = (S / 2)` `void` `findTriangle(` `long` `S)` `{` ` ` `// Fix the two pairs of coordinates` ` ` `long` `X1 = 0, Y1 = 0;` ` ` `long` `X2 = MAX, Y2 = 1;` ` ` `// Find (X3, Y3) with integer coordinates` ` ` `long` `X3 = (MAX - S % MAX) % MAX;` ` ` `long` `Y3 = (S + X3) / MAX;` ` ` `cout << ` `"("` `<< X1 << ` `", "` `<< Y1 << ` `")\n"` `;` ` ` `cout << ` `"("` `<< X2 << ` `", "` `<< Y2 << ` `")\n"` `;` ` ` `cout << ` `"("` `<< X3 << ` `", "` `<< Y3 << ` `")"` `;` `}` `// Driver code` `int` `main()` `{` ` ` `long` `S = 4;` ` ` `findTriangle(S);` ` ` `return` `0;` `}` |

## Java

`// Java implementation of the approach` `class` `GFG` `{` ` ` `static` `final` `long` `MAX = ` `1000000000` `;` ` ` ` ` `// Function to find the triangle` ` ` `// with area = (S / 2)` ` ` `static` `void` `findTriangle(` `long` `S)` ` ` `{` ` ` ` ` `// Fix the two pairs of coordinates` ` ` `long` `X1 = ` `0` `, Y1 = ` `0` `;` ` ` `long` `X2 = MAX, Y2 = ` `1` `;` ` ` ` ` `// Find (X3, Y3) with integer coordinates` ` ` `long` `X3 = (MAX - S % MAX) % MAX;` ` ` `long` `Y3 = (S + X3) / MAX;` ` ` ` ` `System.out.println(` `"("` `+ X1 +` ` ` `", "` `+ Y1 + ` `")"` `);` ` ` `System.out.println(` `"("` `+ X2 +` ` ` `", "` `+ Y2 + ` `")"` `);` ` ` `System.out.println(` `"("` `+ X3 +` ` ` `", "` `+ Y3 + ` `")"` `);` ` ` `}` ` ` ` ` `// Driver code` ` ` `public` `static` `void` `main (String[] args)` ` ` `{` ` ` `long` `S = ` `4` `;` ` ` ` ` `findTriangle(S);` ` ` `}` `}` `// This code is contributed by AnkitRai01` |

## Python3

`# Python3 implementation of the approach` `MAX` `=` `1000000000` `;` `# Function to find the triangle` `# with area = (S / 2)` `def` `findTriangle(S) :` ` ` `# Fix the two pairs of coordinates` ` ` `X1 ` `=` `0` `; Y1 ` `=` `0` `;` ` ` `X2 ` `=` `MAX` `; Y2 ` `=` `1` `;` ` ` `# Find (X3, Y3) with integer coordinates` ` ` `X3 ` `=` `(` `MAX` `-` `S ` `%` `MAX` `) ` `%` `MAX` `;` ` ` `Y3 ` `=` `(S ` `+` `X3) ` `/` `MAX` `;` ` ` `print` `(` `"("` `, X1, ` `","` `, Y1, ` `")"` `);` ` ` `print` `(` `"("` `, X2, ` `","` `, Y2, ` `")"` `);` ` ` `print` `(` `"("` `, X3, ` `","` `, Y3, ` `")"` `);` `# Driver code` `if` `__name__ ` `=` `=` `"__main__"` `:` ` ` `S ` `=` `4` `;` ` ` `findTriangle(S);` `# This code is contributed by kanugargng` |

## C#

`// C# implementation of the above approach` `using` `System;` ` ` `class` `GFG` `{` ` ` `static` `readonly` `long` `MAX = 1000000000;` ` ` ` ` `// Function to find the triangle` ` ` `// with area = (S / 2)` ` ` `static` `void` `findTriangle(` `long` `S)` ` ` `{` ` ` ` ` `// Fix the two pairs of coordinates` ` ` `long` `X1 = 0, Y1 = 0;` ` ` `long` `X2 = MAX, Y2 = 1;` ` ` ` ` `// Find (X3, Y3) with integer coordinates` ` ` `long` `X3 = (MAX - S % MAX) % MAX;` ` ` `long` `Y3 = (S + X3) / MAX;` ` ` ` ` `Console.WriteLine(` `"("` `+ X1 +` ` ` `", "` `+ Y1 + ` `")"` `);` ` ` `Console.WriteLine(` `"("` `+ X2 +` ` ` `", "` `+ Y2 + ` `")"` `);` ` ` `Console.WriteLine(` `"("` `+ X3 +` ` ` `", "` `+ Y3 + ` `")"` `);` ` ` `}` ` ` ` ` `// Driver code` ` ` `public` `static` `void` `Main (String[] args)` ` ` `{` ` ` `long` `S = 4;` ` ` ` ` `findTriangle(S);` ` ` `}` `}` `// This code is contributed by PrinciRaj1992` |

## Javascript

`<script>` `// Javascript implementation of the approach` `let MAX = 1000000000;` `// Function to find the triangle` `// with area = (S / 2)` `function` `findTriangle( S)` `{` ` ` `// Fix the two pairs of coordinates` ` ` `let X1 = 0, Y1 = 0;` ` ` `let X2 = MAX, Y2 = 1;` ` ` `// Find (X3, Y3) with integer coordinates` ` ` `let X3 = (MAX - S % MAX) % MAX;` ` ` `let Y3 = (S + X3) / MAX;` ` ` `document.write( ` `"("` `+ X1 + ` `", "` `+ Y1 + ` `")<br/>"` `);` ` ` `document.write( ` `"("` `+ X2 + ` `", "` `+ Y2 + ` `")<br/>"` `);` ` ` `document.write( ` `"("` `+ X3 + ` `", "` `+ Y3 + ` `")<br/>"` `)` ` ` `}` `// Driver code` ` ` `let S = 4;` ` ` `findTriangle(S);` `// This code contributed by aashish1995` `</script>` |

**Output:**

(0, 0) (1000000000, 1) (999999996, 1)

**Time Complexity:** O(1)

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer **Complete Interview Preparation Course****.**

In case you wish to attend live classes with industry experts, please refer **DSA Live Classes**