SRM 481 div2
来源:互联网 发布:ipower手指充电软件 编辑:程序博客网 时间:2024/05/17 07:27
虽然比较失败,但是总结还是要写的.
第一题 CircleMarket 比较简单,遍历一遍得到最终的关门时间endTime后,然后单纯的模拟就行了,从时间0开始到endTime,累加移动的时间,判断一下,到endTime的时候就得到买了多少东西了.
第二题ChickenOracle想了好久还是不得要领,最终参考了各大牛的代码,但是逻辑依然乱的很.最终用下图表示终于清晰了.整个的n个人可以分为如下的4部分.如果设第三部分的人数为x的话,则第一部分就是lieCount-x,第二部分则是n+x-lieCount-liarCount,第四部分则是liarCount-x.
这样就比较清晰了,柯南说过,真像只有一个,那么最终说出的真像的个数(并不是真实真像的个数)就是第二部分和第三部分的和。然后假设一个真像,是鸡或者是蛋,然后各部分的数值均>=0即可。
比如说,先有蛋是真像,那么eggCount=x+(n+x-lieCount-liarCount);那么用这个式子可以得出x=(eggCount-n+lieCount+liarCount)/2,如果eggCount-n+lieCount+liarCount是2的倍数,同时,4个部分均>=0,即x>=0 && lieCount>=0 && n+x-lieCount-liarCount>=0 && liarCount-x>=0,那么我们可以说,这样的x是存在的,即先有蛋是可能的。
现有鸡的做法也一样,只不过公式变为n-eggCount=x+(n+x-lieCount-liarCount);后面的推理类似。
1 未知真相
说真话
2 知真相
说真话
3 未知真相
说假话
4 知真相
说假话
第三题BatchSystem也很简单,就是操作系统中的短作业优先,贪心算法,需要注意的就是int的精度不够处理中间的的计算过程,即每个人的总的作业耗时。还有就是注意输出的格式,是要字典序的。
- SRM 481 div2
- SRM 114 DIV2 [550]
- SRM 398 DIV2 [250]
- SRM 399 DIV2 [250]
- SRM 387 DIV2 [250]
- SRM 387 DIV2 [600]
- SRM 397 DIV2 [500]
- SRM 400 DIV2 [250]
- SRM 400 DIV2 [500]
- SRM 397 DIV2 [1000]
- SRM 405 DIV2
- SRM 421Div2 500
- SRM 457 Div2 500
- SRM 465(DIV1 DIV2)
- SRM 465(DIV1 DIV2)
- SRM 212 div2
- SRM 430 div2
- SRM 504.5 DIV2
- C#如何将字符串转换成ASCII码
- vsftpd虚拟用户配置(转载)
- SecureCRT连接到ubuntu后出现的乱码问题
- HttpModule与HttpHandler详解
- Debugging with GDB
- SRM 481 div2
- 3000元/月 急聘兼职网络信息回复员,工资日结
- 整数数组输出字符串的问题
- 蜕变真遭罪
- .NET的网站运行慢 结果就是程序问题
- c#中关于字符串的一些函数
- 25.214---物理层过程(功控过程)
- Codeforces Beta Round #27 ABC题
- 大学就不是个学习的地方,不怪哥