博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[考试]20150903
阅读量:5890 次
发布时间:2019-06-19

本文共 838 字,大约阅读时间需要 2 分钟。

1、前言

  考得稀下的,算了不说了。

 

2、Password 博士的密码

大概题意:给出一个数列,选出其中一些数字使其和为所给数字。

总结:被这道题坑死了!为了省时间,我事先排了序并且用了前缀和优化,但是它的数列存在负数,而且是所有数据都有负数,所以直接爆零无话可说。后来再看了一眼题目发现好像确确实实没有说一定是正整数。

题解:题解是非常鬼畜的。说先前60%直接暴力DFS即可(妈蛋);然后注意100分为n<=40。暴力显然是O(n!)的,所以当n>25时,我们可以把n个数分成两个部分,首先暴力算出两个部分的所有组合情况,然后利用两部分求和,使两部分总和满足条件。

 

3、Circle 套圈游戏

大概题意:地图上有一些点,给出一个两直角边长度已知的直角三角形,用直角三角形框住最多的点,要求直角点必须在地图上的点上。

总结:有没有看清题目,我觉得我可以弃疗了。三角形的直角必定在整数点上,所以对于40%数据直接O(n^2)枚举所有点就行了。呵呵。

题解:40分在上面。100分的话,CDQ分治省略,来讲讲容斥原理。根据题意易得我们是需要选择一个直角三角形,可以考虑将其三条边延长为直线,由此将坐标系划分成7个部分。学过线性规划的应该都知道怎么求第1部分面积;再根据容斥原理,易得S1=Sall-S(2,3,4)-S(2,7,6)-S(4,5,6)+S2+S6。如图:

具体过程的话,如何判断一个点在一条线的那一侧?利用截距来判断简便而有效。求出Sall,S(2,3,4),S(2,7,6)和S(4,5,6)都是不难的,那么对于S2,S6,需要用树状数组来维护。

 

4、Last 最后一题

  这道题不怎么想讲。。。。我题目其实看了很久才看懂,但是其实就是一道简单的数学题,但是由于数据范围极大<=10^500,所以麻烦的地方就是需要用到高精度加减乘法。另外奇偶性要考虑。

转载于:https://www.cnblogs.com/jinkun113/p/4780895.html

你可能感兴趣的文章
mysql5002_mysql新手进阶02
查看>>
python类 del_全面了解Python类的内置方法
查看>>
前后端传图片用base64好吗_前后端分离 前台传base64的图片 tp5.1.1进行处理
查看>>
java对象的排序_Java对象排序两种方法
查看>>
java jni 原理_使用JNI技术实现Java和C++的交互
查看>>
java 重写system.out_重写System.out.println(String x)方法
查看>>
java 生成对称密钥_java中以DES的方式实现对称加密并提供密钥的实例
查看>>
java hostwrite_一个RUNNABLE状态的线程hang在了java.io.FileOutputStream.writeBytes方法上
查看>>
计算机java语言答案_【计算机考试】JAVA语言,求答案!!!
查看>>
java web session管理_Java Web之会话管理二:Session
查看>>
java 面向对象基本概念_Java面向对象-面向对象编程之基本概念
查看>>
java数值保留2位小数_java中如何使Double类型的数值保留两位小数问题
查看>>
java基础包括哪些内容_Java基础课程内容有哪些?
查看>>
java跨行_小白跨行学习Java的辛酸路程
查看>>
mysql5.7 外键错误_mysql5.7 创建表外键失败 求看下!!!! 折磨我一天了?
查看>>
python asyncio文件操作_Python中使用asyncio封装文件读写详解及实例
查看>>
java邮件数据库_java 发送数据库查询的数据作为excel表格邮件
查看>>
画图程序 java_一个JAVA画图程序
查看>>
java深度解析 pdf_这一份Spring源码解析PDF,阿里架构师直言:全网最深度解析!...
查看>>
为什么java类中可以创建实例_java – 为什么我出乎意料地能够创建我的单例类的多个实例?...
查看>>