题目链接:戳这里

题意:一个平面里有n个点,问存不存在一条直线上有m个点,满足m >= n*x。

解题思路:0<x<1,且x小数点后只有1位,也就是说10*m > n。假设存在一条直线满足条件,则任意一点在m中的概率>0.1,也就是说理论上随机10个点,一定有一个点在m上。所以随机一个点,遍历与其他点的斜率,斜率相同的点 + 该点本身 >= n * m,则符合条件。

附ac代码:

 1 #include <iostream>
2 #include<bits/stdc++.h>
3 using namespace std;
4 typedef long long ll;
5 #define lson l,mid,rt<<1
6 #define rson mid+1,r,rt<<1|1
7 #define lef rt<<1
8 #define rig rt<<1|1
9 const int maxn = 2e5 + 10;
10 const ll mod = 998244353;
11 const ll inf = 0x3f3f3f3f;
12 const double eps = 1e-6;
13 struct nod
14 {
15 double x;
16 double y;
17 }coo[maxn];
18
19 int main()
20 {
21 int t;
22 scanf("%d", &t);
23 double x;
24 int n;
25 while(t--)
26 {
27
28 scanf("%d %lf", &n, &x);
29 for(int i = 1; i <= n; ++i)
30 {
31 scanf("%lf %lf", &coo[i].x, &coo[i].y);
32 }
33 int cas = 20;
34 while(cas--)
35 {
36 map<double, double> mp;
37 int i = rand() % n + 1, j = 1;
38 for(j = 1; j <= n; ++j)
39 {
40 if(i == j)continue;
41 double u;
42 if(fabs(coo[j].x - coo[i].x) < eps)
43 {
44 u = inf + 1.0;
45 ++mp[u];
46 if(mp[u] + 1.0 + eps > n * x) break;
47 }
48 else
49 {
50 u = (coo[i].y - coo[j].y) / (coo[i].x - coo[j].x);
51 ++mp[u];
52 if(mp[u] + 1.0 + eps > n * x) break;
53 }
54 }
55 if(j <= n) break;
56 }
57 if(cas > 0) puts("Yes");
58 else puts("No");
59 }
60 return 0;
61 }

2018大都会赛 A Fruit Ninja【随机数】的更多相关文章

  1. 牛客 Fruit Ninja 2018 ACM 上海大都会赛 (随机化算法)

    题目链接:Fruit Ninja 比赛链接:2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 题目描述 Fruit Ninja is a juicy action game enjoyed ...

  2. 2018 ACM 国际大学生程序设计竞赛上海大都会赛

    传送门:2018 ACM 国际大学生程序设计竞赛上海大都会赛 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛2018-08-05 12:00:00 至 2018-08-05 17:00:0 ...

  3. sdut 2416:Fruit Ninja II(第三届山东省省赛原题,数学题)

    Fruit Ninja II Time Limit: 5000MS Memory limit: 65536K 题目描述 Have you ever played a popular game name ...

  4. Fruit Ninja(随机数rand())

    链接:https://www.nowcoder.com/acm/contest/163/A来源:牛客网 题目描述 Fruit Ninja is a juicy action game enjoyed ...

  5. 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 F Color it

    链接:https://www.nowcoder.com/acm/contest/163/F 来源:牛客网 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 F Color it 时间限制:C ...

  6. 2018 ACMICPC上海大都会赛重现赛 H - A Simple Problem with Integers (线段树,循环节)

    2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 H - A Simple Problem with Integers (线段树,循环节) 链接:https://ac.nowcoder.co ...

  7. 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 F Color it (扫描线)

    2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 F Color it (扫描线) 链接:https://ac.nowcoder.com/acm/contest/163/F来源:牛客网 时间 ...

  8. 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 J Beautiful Numbers (数位DP)

    2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 J Beautiful Numbers (数位DP) 链接:https://ac.nowcoder.com/acm/contest/163/ ...

  9. 2018 ICPC上海大都会赛重现赛 D Thinking-Bear magic (几何)

    2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 D Thinking-Bear magic (几何) 链接:https://ac.nowcoder.com/acm/contest/163/ ...

随机推荐

  1. 超精讲-逐例分析CS:LAB2-Bomb!(上)

    0. 环境要求 关于环境已经在lab1里配置过了这里要记得安装gdb 安装命令 sudo yum install gdb 实验的下载地址 http://csapp.cs.cmu.edu/3e/labs ...

  2. 安装OpenDaylight及Openflow插件

    1. 安装 Java 和 Maven CentOS7: yum install java-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64 ma ...

  3. hook笔记②

  4. 浅谈linux IO csy 360技术 2021-01-18

    浅谈linux IO csy 360技术 2021-01-18

  5. 【PostgreSQL】PostgreSQL数据库浅析

    前言 工作中数据库用的不多,大部分都是简单查询一下了事,某项目中突然要求后端进行比较全面的数据库操作,现对自己学到的东西做一下总结. 简介 废话不多说,上官网地址: PostgreSQL 9.4.4 ...

  6. 利用Mixins扩展类功能

    8.18 利用Mixins扩展类功能 - python3-cookbook 3.0.0 文档 https://python3-cookbook.readthedocs.io/zh_CN/latest/ ...

  7. 【Redis 分布式锁】(1)一把简单的“锁”

    原文链接:https://www.changxuan.top/?p=1230 在单体架构向分布式集群架构演进的过程中,项目中必不可少的一个功能组件就是分布式锁.在开发团队有技术积累的情况下,做为团队的 ...

  8. k8s之集群管理

    导读 经过前面k8s系列的文章,这一系列已经基本完成,现在就用几篇文章说一下日常的集群维护. 目录 更新资源对象的Label Namespace:集群环境共享与隔离 部署集群监控 部署Web UI管理 ...

  9. Spring Cloud,Docker书籍资源、优秀博文等记录

    Spring Cloud,Docker书籍资源.优秀博文等记录 Spring Cloud,Docker书籍资源.优秀博文等记录 一.书籍 二.博文地址 三.思维导图Or图片 3.1一张图总结 Dock ...

  10. 笔趣看小说Python3爬虫抓取

    笔趣看小说Python3爬虫抓取 获取HTML信息 解析HTML信息 整合代码 获取HTML信息 # -*- coding:UTF-8 -*- import requests if __name__ ...