Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

PKU 3338 另类过法

Posted by runformydream at 2009-08-21 10:14:51 on Problem 3338
PKU 3338的另类过法
本题可能有多种解法,我的解法是一种很简单的模拟+DFS过的。本题是一次一次进行矩形切割
这样就可以当切下一块时,将整块编一个号。
譬如题的第一个SIMPLe:
3 5
3
1 1 3 2
4 0 2 3
4 0 5 1
开始初始化所有的编号为0,
当切下1 1 3 2这一块时,就将其编为1,这样就可以将所有的快都编好块,但是这里有一个问题,就是有重合的时候,怎么办?
这样就可以用本块以前的区域号+当前的区域号,就可以得到一个新的区域号,这样就可以区分每一次切割
如SIMPLe
1 1 3 2
开始全部初始化为0,count=1
(1,1)->(3-1,2-1)都为0+count=1
(2,0)->(4-1,3-1)都为2,但是由于(2,1)以前的编号为1,所以(2,1)的编号就为2+1=3
这样全部编完号后,DFS一遍就搞定了
最后的结果:
5712151	runformydream	3338	Accepted	564K	0MS	G++	1931B	2009-08-21 10:02:03

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator