码迷,mamicode.com
首页 > 其他好文 > 详细

常州培训 day5 解题报告

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

标签:数据   sp   c   bs   过程   贪心   不能   颜色   

第一题:(贪心)

题目大意:给出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 解题报告

标签:数据   sp   c   bs   过程   贪心   不能   颜色   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!