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

50题纪念..给后来的人一点提示

Posted by aclolicon at 2016-08-25 10:23:52 on Problem 2528 and last updated at 2016-08-25 10:33:49
1.我建的是段树,也就是:
|____|____|____|
  1    2    3
这样子的。
2,3,4那组数据中比较有争议的一组是:
3
5 6
4 5
6 8
如果不离散化直接算覆盖的话,是这样的:(暂且忽略前面的1-4..)
...          |____|____|____|
               6     7   8
   |____|____|
     4    5   
        |____|____|
          5    6   
显然答案为2啦。(从顶往底看,注意输入顺序)
然后离散化之后,
如果不注意数值相同,就会变成这样:
3 4
1 2
5 6
数值相同后离散就是这样:
2 3
1 2
3 4
          |____|____|
            3     4  
|____|____|
  1    2   
     |____|____|
       2    3   
这就对了。

但是,离散化得再注意到下面这个问题:
1 10
1 3
6 10
这组数据,不离散化是这样的:
                         |____|____|____|____|____|
                           6    7    8    9    10
|____|____|____|
  1    2    3
|____|____|____|____|____|____|____|____|____|____|
  1    2    3    4    5    6    7    8    9    10
显然答案为3.
如果我们使用上面的“注意到数值相同的离散化”,结果是这样的:
1 4
1 2
3 4
画出来是这样的:
          |____|____|
            3    4
|____|____|
  1    2   
|____|____|____|____|
  1    2    3    4  
然后坑就出现了..
我的解决方案是,
             ↓
          |____|____|
        ↓   3    4
|____|____|
  1    2   
|____|____|____|____|
  1    2    3    4  

在离散化时出现了海报右端序号在前,左端序号在后,且序号不等(也就是离散后会相邻的情况):
             ↓
          |____|____|
        ↓   3    4
|____|____|
  1    2   
这两个就属于离散化后相邻的情况
我加上1:
变成这样:
1 5
1 2
4 5
               |____|____|
                 4    5
|____|____|
  1    2   
|____|____|____|____|____|
  1    2    3    4    5
可能会有人问,要是是这样的呢?
3
1 4
1 2
3 4
本来就相邻的情况呢?
这样的话,提取原来的序号,比较原本是否就相邻即可。
第一次写离散化...有错请指正
欢迎来http://blog.moe.cn.com/1351.htm看看

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