现在的位置: 首页 > 综合 > 正文

CH Round#48 T1数三角形

2018年01月14日 ⁄ 综合 ⁄ 共 995字 ⁄ 字号 评论关闭

真是跪烂……我叉积判完了三点共线还去判了三边长的关系……实际上不共线的话三边长关系肯定是满足的……于是因为精度设置问题挂掉了……(我设个1e-12么还有机会,1e-6肯定挂了……)

#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<string>
#include<set>
#include<queue>
#include<stack>
#include<map>
#include<cmath>
#include<cstdlib>
#define ll long long
#define maxn 100010
#define inf 1000000000
#define linf (1LL<<50)
using namespace std;
inline ll read()
{
    ll x=0,f=1;char ch=getchar();
    while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
    while(ch>='0'&&ch<='9'){x*=10;x+=ch-'0';ch=getchar();}
    return x*f;
}

inline void read(char *s,int &ts)
{
	char x=getchar();
	while(!(x>='a'&&x<='z'))x=getchar();
	while(x>='a'&&x<='z')s[++ts]=x,x=getchar();
}
int ans=0;
int n;
int x[maxn],y[maxn];
double f(int a,int b)
{
    return sqrt((x[b]-x[a])*(x[b]-x[a])+(y[b]-y[a])*(y[b]-y[a]));
}

int main()
{
    scanf("%d",&n);
    for(int i=1;i<=n;i++)
    scanf("%d%d",&x[i],&y[i]);
    for(int i=1;i<=n-2;i++)
    for(int j=i+1;j<=n-1;j++)
    for(int k=j+1;k<=n;k++)
    if((y[j]-y[i])*(x[k]-x[j])!=(y[k]-y[j])*(x[j]-x[i])) ans++;
    printf("%d\n",ans);
    return 0;
}

抱歉!评论已关闭.