Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cmath>
- using namespace std;
- int x, y, N, maxx, maxy, minx, miny, h = 0, H = 0, tx, ty, s = 0, a = 0, A = 1;
- int main() {
- cin >> N;
- for (int i = 0; i < N; i++){
- cin >> x >> y;
- if ((y == 0) && (A == 1)){
- maxx = x;
- maxy = y;
- minx = x;
- miny = y;
- A = 0;
- }
- if ((x > maxx) && (y == 0)){
- maxx = x;
- maxy = y;
- }
- if ((x < minx) && (y == 0)){
- minx = x;
- miny = y;
- }
- if (abs(y) > h){
- tx = x;
- ty = y;
- h = abs(y);
- }
- }
- a = maxx - minx;
- s = a * h / 2;
- cout << s;
- return 0;
- }
- /*/
- На плоскости дан набор точек с целочисленными координатами. Необходимо найти треуголь-ник наибольшей площади с вершинами в этих точках, одна из сторон которого лежит на оси OX. Напишите эффективную, в том числе по памяти, программу, которая будет решать эту задачу. Размер памяти, которую использует Ваша программа, не должен зависеть от длины переданной последовательности чисел. Укажите используемый язык программирования и его версию.
- В первой строке вводится одно целое положительное число – количество точек N. Каждая из следующих N строк содержит два целых числа – сначала координата х, затем координата у очередной точки.
- Программа должна вывести одно число – максимальную площадь треугольника, удовлетворяю-щего условиям задачи. Если такого треугольника не существует, программа должна вывести ноль.
- Пример входных данных:
- 6
- 0 0
- 2 0
- 0 4
- 3 3
- 5 5
- -6 -6
- Пример выходных данных для приведенного выше примера входных данных:
- 6
- 7
- 0 -4
- 2 2
- -2 4
- -4 0
- 0 3
- 0 0
- 1 0
- 10
- /*/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement