สามเหลี่ยมใหญ่ (bigtriangle)
Author: Pakin Olanraktham
Source: PROGRAMMING.IN.TH
Difficulty: ?
Prerequisites:
เฉลย
#include <stdio.h>
#include <stdlib.h>
int main() {
int n;
scanf("%d", &n);
int a[n][2]={};
for (int i = 0; i < n; i++) scanf("%d %d", &a[i][0], &a[i][1]);
float ans = 0;
for (int i = 0; i < n; i++) {
for (int j = i + 1; j < n; j++) {
for (int k = j + 1; k < n; k++) {
float r = (float) abs(a[i][0]*a[j][1] + a[j][0]*a[k][1] + a[k][0]*a[i][1] - a[i][1]*a[j][0] - a[j][1]*a[k][0] - a[k][1]*a[i][0]) / 2;
if (r > ans) ans = r;
}
}
}
printf("%.3f", ans);
}
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int n;
cin >> n;
pair <int, int> a[n];
for (int i = 0; i < n; i++) cin >> a[i].first >> a[i].second;
float ans = 0;
for (int i = 0; i < n; i++) {
for (int j = i + 1; j < n; j++) {
for (int k = j + 1; k < n; k++) {
float r = (float) abs(a[i].first*a[j].second + a[j].first*a[k].second + a[k].first*a[i].second - a[i].second*a[j].first - a[j].second*a[k].first - a[k].second*a[i].first) / 2;
if (r > ans) ans = r;
}
}
}
printf("%.3f", ans);
}