首页 > 其他 > 详细

常州培训 day5 解题报告

时间:2014-08-20 21:02:42      阅读:360      评论:0      收藏:0      [点我收藏+]

第一题:(贪心)

题目大意:给出N*M的矩形,要用正方形将它铺满(正方形之间不能重叠),相邻的正方形颜色不能相同,颜色用ABCD表示。要求从上到下从左到右字典序最小。

N,M<=100

 

解题过程:

1.首先感觉是能放就尽可能使正方形边长大,但是很明显有反例(见图A)

2.然后想到从上到下从左到右,依次检查,如果还没被铺上,那么就先铺上1*1的X,然后检查它右边能填什么,如果他右边能填的比它大(Y),那么就把1*1的改成尽可能大,如果他右边的比它小,那么它只要放1*1的X,然后右边放尽可能大的Y。 证明不来,直觉是对的,通过了所有数据。。

图A:7*5

A A A A A

A A A A A

A A A A A

A A A A A 

A A A A A

B B X

B B

按1的话在X处放2*2的C,变成

A A A A A

A A A A A

A A A A A

A A A A A 

A A A A A

B B C C

B B C C

而实际可以先 放1*1的C

A A A A A

A A A A A

A A A A A

A A A A A 

A A A A A

B B C

B B

然后放2*2的B

A A A A A

A A A A A

A A A A A

A A A A A 

A A A A A

B B C B B

B B    B B

这样明显更优。

 

常州培训 day5 解题报告,布布扣,bubuko.com

常州培训 day5 解题报告

原文:http://www.cnblogs.com/vb4896/p/3925432.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!