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贴心指导
		刷题训练 初学者 有一定语言基础,但是不了解算法竞赛,水平在联赛一等奖以下的. 参考书:<算法竞赛入门经典--刘汝佳>,<算法竞赛入门经典训练指南--刘汝佳> 题库:洛谷(历年 ... 
随机推荐
- ThinkPHP讲解(十二)——文本编辑器和ajax传址
			一.文本编辑器 1.首先,在网上下载ueditor文件 2.在要添加文本编辑器的页面中引用ueditor文件中的js文件 <script type="text/javascript&q ... 
- TextBox
			一.聚焦: private void FrmOnlineChargeMoney_Paint(object sender, PaintEventArgs e) { edtAuthCode.SelectA ... 
- Flowplayer-Subtitle
			SOURCE URL: https://flowplayer.org/docs/subtitles.html Setting up Subtitles are loaded with a <tr ... 
- python学习笔记七 初识socket(进阶篇)
			socket socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. sock ... 
- 流镜像(华为S9306和S5700)
			流镜像是指将设备.端口或者VLAN内收.发的指定类型报文复制到观察端口上,监控设备只对指定类型报文进行监测. 流镜像有基于ACL和基于MQC(即复杂流分类)两种配置方式.前者配置简便,但是没有后者支持 ... 
- c#委托(1)
			// 委托声明 -- 定义一个签名:delegate double MathAction(double num); class DelegateTest{ // 符合委托声明的常规方法 static ... 
- C 语言中用bsearch()实现查找操作
			C语言中可以用bsearch()实现二分查找.同qsort()一样,bsearch()也包含在库中,且同样要自定义比较子函数.其原型如下: void *bsearch(const void *key, ... 
- ShareSDK第三方登录代码
			- (IBAction)YYSJBut:(UIButton *)sender{ if (sender.tag == 7) { [self AuthLogin:SSDKPlat ... 
- 如何将php的错误输出到nginx的error_log中去
			参考文档:http://www.cnblogs.com/glory-jzx/p/3966082.html 通过FastCGI运行的PHP,在用户访问时出现错误,会首先写入到PHP的errorlog中如 ... 
- 左边图标右边文字,在div里居中
