UOJ Test Round 1
第一题:
题目大意:
给出N个字符串,字符串的前面部分都是字母且都是一样的,后面部分是数字,按照后面的数字排序。N<=10000
解题过程:
1.第一题是真良心,一开始的做法是把后面的数字分离出来 比较大小,但是出现了傻逼错误样例过不去,就直接换了种方法,先比较长度再比较字典序。 结果就AC了。
2.如果按照最初的做法分离数字只能拿到70分,因为题目没说后面数字的范围,实际上是会爆long long的。
第二题:
题目大意:
有N个任务,每个任务有一个优先级p(各不相同),到达时间s,完成所需要的时间t. 每次会选择一个已经到达的且优先级最大的任务,让它的t减去1. 现在有一个任务的优先级不见了(定为-1),但是知道它是在时间T完成的。要你求出这个任务的一个可能的优先级 已经所有任务的完成时间。 N<=300000.
解题过程:
1.很容易想到用大根堆来模拟,先把时间离散化,然后根据时间来模拟。当模拟到任务x(优先级未知的那个)的时候再来特殊考虑。
2.当模拟到任务x的开始时间的时候,对它造成影响的任务只可能是当前堆里的任务以及开始时间在T之前的任务。所以把这些任务都放到一个表里,然后按照优先级来排序。由于题目保证有解,所以只要确定这个任务的优先级的范围就可以了。由于优先级比这个任务大的任务肯定要比它先做,所以当这些任务的耗时的和加上任务x的耗时等于T-Sx 的时候,就可以确定这个任务的优先级了。由于所有优先级不同,还要用一个set来搞。 总之细节上很容易出错,感谢WJZ大神的点拨才木有爆0.
第三题:
有一棵n个结点的黑白相间的大树,从1到n编号。
这棵黑白树中有m个黑点,其它都是白点。
对于一个黑点我们定义他的好朋友为离他最远的黑点。如果有多个黑点离它最远那么都是它的好朋友。两点间的距离定义为两点之间的最短路的长度。
现在你要摧毁一个白点。
摧毁后有一些黑点会不高兴。一个黑点不高兴当且仅当他不能到达任何一个在摧毁那个白点前的好朋友。
请你你最大化不高兴的黑点数。
解题过程:
1.比赛的时候把时间都花在了第2题,这题自然就爆0了。
2.AC算法:直接看vfk的吧 http://uoj.ac/blog_show.php?id=12
总结:
1.总体来说还是时间把握的不是很好,T3其实可以暴力骗个二三十分的,看到T2这么变态就放弃治疗了。
2.做题还是要静下心来,一个算法碰到了一个瓶颈,不要轻易放弃,说不定只要加点东西就变成正解了。
UOJ Test Round 1的更多相关文章
- UOJ Easy Round#7
UOJ Easy Round#7 传送门:http://uoj.ac/contest/35 题解:http://matthew99.blog.uoj.ac/blog/2085 #1 题意: 在一个(2 ...
- UOJ Test Round #2
昨天晚上打的这个比赛,简直一颗赛艇啊-- 感觉发挥的并不好.比赛的时候比较紧张,最后一题还脑残写了个离散化结果爆零了,哎我怎么这么逗逼-- 讲讲比赛经过吧. 比赛之前逗逼地以为是8:00开始,然后淡定 ...
- 【UOJ Easy Round #1】
数论/Trie/并查集 猜数 这题我是这样分析的…… $a*b=g*l=n=k^2 \ and \ (g|a,g|b) \Rightarrow (g*a')*(g*b' )=g*l=k^2 \\ \R ...
- UOJ Easy Round #5
Preface 本着刷遍(只刷一遍)各大OJ的原则我找到了一场UOJ的比赛 无奈UOJ一般的比赛难度太大,我就精选了UER中最简单的一场打了一下,就当是CSP前的练习吧 A. [UER #5]万圣节的 ...
- 【UOJ Easy Round #2】
然而UER我也照样跪…… 第一题 忘了取模sad || 操作符将整个区间分成了一些段,每个手机只会执行其中某一段,执行次数为这一段中&&的个数?+1? ans=ans*num[i]+1 ...
- UOJ Rounds
UOJ Test Round #1 T1:数字比大小的本质是按(长度,字典序)比大小. T2:首先发现单调性,二分答案,用堆模拟,$O(n\log^2 n)$. 第二个log已经没有什么可优化的了,但 ...
- 51Nod 算法马拉松21(迎新年)
这次打算法马拉松是在星期五的晚上,发挥还算正常(废话,剩下的题都不会= =). 讲讲比赛经过吧. 8:00准时发题,拿到之后第一时间开始读. A配对,看上去像是二分图最大权匹配,一看范围吓傻了,先跳过 ...
- NOI前训练日记
向别人学习一波,记点流水帐.17.5.29开坑. 5.29 早晨看了道据说是树状数组优化DP的题(hdu5542),然后脑补了一个复杂度500^3的meet in the middle.然后死T... ...
- 半小时写完替罪羊重构点分树做动态动态点分治之紫荆花之恋的wyy贴心指导
刷题训练 初学者 有一定语言基础,但是不了解算法竞赛,水平在联赛一等奖以下的. 参考书:<算法竞赛入门经典--刘汝佳>,<算法竞赛入门经典训练指南--刘汝佳> 题库:洛谷(历年 ...
随机推荐
- paper 110:凸优化和非凸优化
数学中最优化问题的一般表述是求取,使,其中是n维向量,是的可行域,是上的实值函数.凸优化问题是指是闭合的凸集且是上的凸函数的最优化问题,这两个条件任一不满足则该问题即为非凸的最优化问题. 其中,是 凸 ...
- java mybatis 中sql 模糊查询
示例: like concat('%',#{groupName},'%') //-------------- <select id="findList" resultType ...
- Url中處理空格、特殊字符
publicvoid UrlEncodeTest(){ string url ="C++ C#"; Console.WriteLine(HttpUtility.UrlE ...
- jSP-13-其他
1. JAVAEE Ø Java平台版本 Java平台有3个版本: 适用于小型设备和智能卡的JavaME (Java Platform Micro Edition,Java 微型版) 适用于桌 ...
- jquery之ajax
语法: $.ajax(url,[settings])/jQuery.ajax(url,[settings]) 返回值:XMLHttpRequest (该函数属于全局jQuery对象(也可理解为静态函数 ...
- 数据可视化:Echart中k图实现动态阈值报警及实时更新数据
1 目标 使用Echart的k图展现上下阈值,并且当真实值超过上阈值或低于下阈值时候,标红报警. 2 实现效果 如下:
- JavaScript高级程序设计 读书笔记 第一章
JavaScript是一种专门为与网页交互而设计的脚本语言 JavaScript实现 ECMAscript---核心 DOM---文档对象模型 BOM---浏览器对象模型
- 【转】MYSQL启用日志,和查看日志
转载地址:http://wasabi.iteye.com/blog/318962 mysql有以下几种日志: 错误日志: -log-err 查询日志: -log ...
- python字符串加颜色区别
1.有时需要显目的区别不同内容,可以改变显目的内容颜色 print("\033[31;1m你好麽,\033[0m我很好..")print("\033[32;1m你好麽,\ ...
- ArrayList&LinkedList&Map&Arrays
Java集合框架 1:集合接口 1.1:Collection接口 Collection接口是构造集合框架的基础.它声明所有类集合都将拥有的核心方法 Boolean add(Object obj) 将o ...