Pagini recente » Cod sursa (job #2129990) | Cod sursa (job #799196) | Cod sursa (job #1744333) | Cod sursa (job #1195549) | Cod sursa (job #2207507)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("poligon.in");
ofstream fout("poligon.out");
const int NMAX = 800;
struct st{int x; int y; } v[NMAX + 5];
int n;
double arie() {
double s = 0;
for(int i = 1; i <= n; i++)
s += abs(v[i].x * v[i + 1].y - v[i + 1].x * v[i].y);
return s / 2;
}
int main()
{
int m, l, c, nr = 0;
fin >> n >> m;
for(int i = 1; i <= n; i++)
fin >> v[i].x >> v[i].y;
v[n + 1] = v[1];
double s = arie();
while(m--) {
fin >> l >> c;
nr++;
for(int i = 2; i <= n; i++) {
st k = v[i];
v[i] = {l, c};
if(arie() > s) {
nr--, v[i] = k;
break;
}
v[i] = k;
}
}
fout << nr;
fin.close();
fout.close();
return 0;
}