Pagini recente » Cod sursa (job #1488211) | Cod sursa (job #2339635) | Cod sursa (job #419872) | Cod sursa (job #1423250) | Cod sursa (job #2776784)
#include<bits/stdc++.h>
using namespace std;
#define x first
#define y second
#define N 240001
#define p pair<double,double>
ifstream f("infasuratoare.in");
ofstream g("infasuratoare.out");
int i,j,M,t;
p v[N],h[N];
bool d(p &a,p &b,p &c)
{
return (a.x-c.x)*(b.y-c.y)-(a.y-c.y)*(b.x-c.x)<0;
}
int main()
{
f>>M;
for(i=0;i<M;++i)
f>>v[i].x>>v[i].y;
sort(v,v+M),reverse_copy(v,v+M-1,v+M);
for(i=0;i<2*M-1;h[j++]=v[i++])
while(j>1&&d(h[j-2],h[j-1],v[i]))
--j;
g<<--j;
for(i=0;i<j;++i)
g<<fixed<<setprecision(9)<<'\n'<<h[i].x<<" "<<h[i].y;
return 0;
}