2020/2/11
Posted 。✧* ꧁王者꧂✧*
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2020/2/11相关的知识,希望对你有一定的参考价值。
7
:
30
−
9
:
00
7:30 - 9:00
7:30−9:00
思考题目 。
T
1
T1
T1的话 , 想用常规套路来做 , 就是把二进制下的每一位看做一个单独的子问题 , 然后这样对于每一种方案就可以做
O
(
n
l
o
g
n
)
O(nlogn)
O(nlogn)的DP了 。 但是 , 因为有
l
<
=
a
[
i
]
<
=
r
l <= a[i] <= r
l<=a[i]<=r的限制 ,所以在判某一种答案的方案合不合法时 , 就不可行了 (主要是我不知道该怎么做)。然后就弃掉了
T
1
T1
T1 , 但是还是想了个优化一些的
d
f
s
dfs
dfs 。
T
2
T2
T2 , 看起来像树形
D
P
DP
DP或者用数据结构维护的一类型题目 。 有
10
p
t
s
10pts
10pts是怎么样都可以水过去的 。 然后我就想后面的怎么优化 。 最暴力的做法就是
O
(
n
4
)
O(n ^ 4)
O(n4)枚举四元组 , 然后判断在两个树中是否可行 。这样的话 , 加上
O
(
n
l
o
g
n
)
O(nlogn)
O(nlogn)处理的
s
t
表
st表
st表 , 应该能把
n
<
=
100
n <= 100
n<=100的一档分拿下 。
n
<
=
300
n <= 300
n<=300这一档应该是需要
O
(
n
3
)
O(n ^ 3)
O(n3)才能过的 。但我就不会了 。 我想的做法是
O
(
n
3
l
o
g
n
)
O(n ^ 3logn)
O(n3logn) , 那个
l
o
g
(
n
)
log(n)
log(n)的常数 , 是
m
a
p
map
map用来存四元组方案的常数 。 所以
T
2
T2
T2也只能写
20
p
t
s
20pts
20pts , 就弃了 。
T
3
T3
T3
最开始的时候 , 我想写
60
p
t
s
60pts
60pts的 。 具体思路是 , 把第
i
d
id
id个字符串中 ,
a
a
a ,
b
b
b ,
b
a
ba
ba ,
a
b
ab
ab ,
b
b
bb
bb 的数量统计出来 , 然后对于
a
a
a ,
b
b
b ,
a
b
ab
ab ,
b
a
ba
ba ,
b
b
bb
bb ,
k
m
p
kmp
kmp一下它和给出的串之间有多少匹配的子串 。 如果 , 给出的串一定比
a
a
a 和
b
b
b都短的话 , 那么这种方法是可行的 。 但是 , 当我码完后 ,发现竟然有可能比
a
a
a 和
b
b
b都长的串 , 我就立马认识到问题的严重性了 。
Q
W
Q
QWQ
QWQ 。。。
9
:
00
−
12
:
00
9:00 - 12:00
9:00−12:00
码题 , 没什么可说的了 。
以上是关于2020/2/11的主要内容,如果未能解决你的问题,请参考以下文章