UVA-10112

#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <cmath>
#include <cctype>
// #include "debug.h"
using namespace std; 
//浮点数陷阱比较时必须用绝对值abs,因为是比较是否在误差内相等。
struct X{
    char name;
    long long x,y;
    X(char name,long long x,long long y){
        this->x=x;this->y=y;
        this->name=name;
    }
    X(){}
} a[16];
double area(int i,int j,int k){
    return abs(0.5*((a[k].y-a[i].y)*(a[j].x-a[i].x)-(a[j].y-a[i].y)*(a[k].x-a[i].x)));
}
bool ok(int i,int j,int k,long long x){
    if(i==j||i==k||j==k) return false;
    if(a[i].x==a[j].x&&a[j].x==a[k].x&&a[i].y==a[j].y&&a[j].y==a[k].y) return false;
    //neibu
    for(int p=0;p<x;p++){
        if(p!=i&&p!=j&&p!=k){
            double ss=area(i,j,k),s1=area(i,j,p),s2=area(i,k,p),s3=area(k,p,j),ss1;
            // printf("sad %.2f %2.f %.2f %.2f\n",ss,s1,s2,s3);
            ss1=s1+s2+s3;
            // cout<<ss1<<endl;
            if(abs(ss-ss1)<1e-6)
                return false;
        }
    }
    return true;
}
int main(){
    // std::ofstream file;
    // file.open(OUTPUT_FILE, std::ios::out);

    long long x,y,d1,d2;
    double smax=0;
    char cmax[4],c1;
    while (cin>>x&&x!=0)
    {
        smax=0;
        for(int i=0;i<x;i++){
            cin>>c1>>d1>>d2;
            a[i]=X(c1,d1,d2);
        }
        // cout<<ok(1,2,3,x)<<endl;
        for(int i=0;i<x;i++){
            for(int j=0;j<x;j++){
                for(int k=0;k<x;k++){
                    if(ok(i,j,k,x)){
                        double ss=area(i,j,k);
                        // cout<<"ok"<<ss<<endl;
                        if(ss>smax){
                            smax=ss;
                            cmax[0]=a[i].name;
                            cmax[1]=a[j].name;
                            cmax[2]=a[k].name;
                        }
                    }
                }
            }
        }
        cmax[4]='\0';
        cout<<cmax<<endl;
        // file<<cmax<<endl;
        // cout<<smax<<endl;s
    }
    return 0;
}

 

posted @ 2020-06-06 21:20  西伯利亚挖土豆  阅读(126)  评论(0编辑  收藏  举报