牛客寒假集训营第二场 补题

D数三角形

 1 #include 
 2 using namespace std;
 3 struct node{
 4     int x,y;
 5 }m[505];
 6 bool is(int i,int j,int k)
 7 {
 8     int t=(m[i].x-m[k].x)*(m[j].x-m[k].x)+(m[i].y-m[k].y)*(m[j].y-m[k].y);
 9     int w=(m[i].x-m[k].x)*(m[j].y-m[k].y)-(m[j].x-m[k].x)*(m[i].y-m[k].y);
10     return(t<0&&w!=0);
11 }
12 int main()
13 {
14     int n,ans=0;
15     cin>>n;
16     for(int i=1;i<=n;i++)
17     {
18         cin>>m[i].x>>m[i].y;
19     }
20     for(int i=1;i<=n;i++)
21     for(int j=i+1;j<=n;j++)
22     for(int k=j+1;k<=n;k++)
23     {
24         if(is(i,j,k)||is(i,k,j)||is(k,j,i))
25             ans++;
26     }
27     cout<<ans;
28 }
29         

 

你可能感兴趣的:(牛客寒假集训营第二场 补题)