显示代码纯文本
#include<cstdio>
#include<algorithm>
#include<cmath>
using namespace std;
const double esp = 1e-10 ;
double x[210],y[210];
double a[100010];
int main(){
freopen("lines.in","r",stdin);
freopen("lines.out","w",stdout);
int n;scanf("%d",&n);
int cnt=0,ans=0;
bool flag=false;
for(int i=0;i<n;i++){
scanf("%lf%lf",&x[i],&y[i]);
for(int j=0;j<i;++j){
a[++cnt]=(y[i]-y[j])/(x[i]-x[j]);
if(a[cnt]>1e20||a[cnt]<-1e20){
--cnt;
flag=true;
}
}
}
sort(a+1,a+cnt+1);
++ans;
for(int i=2;i<=cnt;i++)
if(fabs(a[i]-a[i-1])>esp)
++ans;
if(flag) ++ans;
printf("%d",ans);
}