竞赛讨论区 > rand函数为啥可以这样用? 这和暴力求解有啥区别呢?
头像
南方丶北方
发布于 2018-08-16 12:39
+ 关注

rand函数为啥可以这样用? 这和暴力求解有啥区别呢?

#include <bits/stdc++.h>
usingnamespacestd;
intx[10001],y[10001];
intmain()
{
    intt,n;
    doublem;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d %lf",&n,&m);
        for(inti=0;i<n;i++)
            scanf("%d%d",&x[i],&y[i]);
        intcont=0,flag=0;
        for(inti=0;i<500;i++)
        {
            inta=rand()%n;
            intb=rand()%n;
            if(a==b)
                continue;
            cont=0;
            for(inti=0;i<n;i++)
            {
                if((x[a]-x[i])*(y[b]-y[i])==(x[b]-x[i])*(y[a]-y[i]))
                    cont++;
            }
            if((double)cont/n>=m)
            {
                flag=1;
                break;
            }
        }
        if(flag)
            printf("Yes\n");
        else
            printf("No\n");
    }
    return0;
}

全部评论

(1) 回帖
加载中...
话题 回帖

等你来战

查看全部

热门推荐