Pagini recente » Cod sursa (job #2178569) | Cod sursa (job #1666604) | Cod sursa (job #1664044) | Cod sursa (job #2142350) | Cod sursa (job #1856408)
#include <iostream>
#include <fstream>
#include <vector>
#include <queue>
#define N 1010
using namespace std;
ifstream f("poligon.in");
ofstream g("poligon.out");
vector<pair<int,int > > vec;
vector<pair<int,int > > rec;
int i,j,n,m,x,y,k,t,p,r,s;
int det(int poz1,int poz2,int poz3)
{
int s,s1,s2,s3,s4,s5,s6;
s1=vec[poz1].first*vec[poz2].second;
s2=vec[poz1].second*rec[poz3].first;
s3=vec[poz2].first*rec[poz3].second;
s4=vec[poz2].second*rec[poz3].first;
s5=rec[poz3].second*vec[poz1].first;
s6=vec[poz1].second*vec[poz2].first;
s=s1+s2+s3-s4-s5-s6;
return s;
}
int main()
{
f>>n>>m;
p=n;
r=m;
while(p!=0)
{
f>>x>>y;
vec.push_back(make_pair(x,y));
p--;
}
while(r!=0)
{
f>>x>>y;
rec.push_back(make_pair(x,y));
r--;
}
int ok=1,nr=0;
for(i=0;i<rec.size();i++)
{
ok=1;
for(j=0;j<vec.size()-1;j++)
if(det(j,j+1,i)>0)
{
ok=0;
break;
}
if(ok==1)
nr++;
}
g<<nr;
}