2024 Xiangtan University Summer Camp-Div.2
A. 二度树上的染色游戏
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

一棵$$$n$$$个节点的二度树(节点最多拥有两个孩子节点的树),编号依次为$$$1 \sim n$$$,其中$$$1$$$为根节点,第$$$i$$$个节点有一个权值$$$w_i$$$。

你在这棵二度树上进行一个回合制游戏,游戏一开始,根节点会被染成红色,其他节点为白色。

对于每一轮,你可以先删掉任何一条边,然后所有与红色节点存在边的节点会被染成红色。

不断进行这样的回合,直到无法染色新的节点为止。游戏的得分是所有白色点的权值总和 - 所有红色点的权值总和。

请计算一下游戏的最高得分是多少?

Input

只含一个样例。

第一行是一个整数$$$n~(1 \le n \le 10000)$$$,表示节点的个数。

第二行是 $$$n$$$ 个整数,表示节点 $$$1\sim n$$$ 的节点权值,所有整数属于 $$$[1,10000]$$$ 区间。

以后的 $$$n-1$$$ 行,每行两个整数$$$u,v~(1 \le u \lt v \le n)$$$,表示$$$v$$$是$$$u$$$的孩子节点。

输入保证输入的树是二度树。

Output

输出一行,为一个整数,表示结果。

Example
Input
6
1 5 4 1 2 3
1 2
1 3
2 4
2 5
3 6
Output
6
Note

第一回删除边$$$(1,2)$$$; 第二回删除边$$$(3,6)$$$。 这样只有节点$$$1,3$$$被染色,红点权值和为$$$5$$$,白点权值和为$$$11$$$,所以游戏得分是$$$6$$$。

B. 小文的排列
time limit per test
3 seconds
memory limit per test
1024 megabytes
input
standard input
output
standard output

小文最近在研究排列问题,但他遇到了一个难题,你能帮他解决吗?

有一个空序列$$$S$$$,每一次操作将$$$1$$$到$$$m$$$的排列随机打乱并接到$$$S$$$的末尾。重复上述操作$$$10^{1000}$$$次后,给定一个长度为$$$n$$$的序列$$$T$$$,小文想知道$$$T$$$是否有可能是$$$S$$$的一个连续子段。

如果从序列$$$S$$$的开头和结尾删去若干个数可以得到序列$$$T$$$,那么称$$$T$$$是$$$S$$$的一个连续子段。

$$$1$$$到$$$m$$$的排列是指由$$$1$$$到$$$m$$$这$$$m$$$个不同的整数以任意顺序排列所组成的数组。

Input

第一行输入两个整数$$$n(1\leq{n}\leq{5\cdot{10^5}})$$$和$$$m(1\leq{m}\leq{10^9})$$$。

第二行输入n个整数$$$T_1,T_2,\cdots,T_n$$$,代表序列$$$T(1\leq{T_i}\leq{10^9})$$$。

Output

如果$$$T$$$有可能是$$$S$$$的一个连续子段,输出"YES",否则输出"NO"。

Examples
Input
8 3
2 3 2 1 3 3 2 1
Output
YES
Input
4 2
1 1 2 2
Output
YES
Input
3 2
1 1 1
Output
NO
Input
1 4
5
Output
NO

C. gcd hard version
time limit per test
2 seconds
memory limit per test
512 megabytes
input
standard input
output
standard output

给定两个长度为 $$$n$$$ 的数组 $$$a$$$, $$$a$$$ 数组的第 $$$i$$$ 个数 为 $$$a_i$$$, $$$b$$$ 数组的第 $$$i$$$ 个数 为 $$$b_i$$$ , 定义$$$Gcd(l ,r)$$$ 为 $$$a$$$ 数组中下标 在$$$[l, r]$$$中的所有数的最大公因数, $$$Sum(l, r)$$$ 为 在 $$$b$$$ 数组中下标在$$$[l, r]$$$中的所有数的和。

你要找到满足 $$$Gcd(l, r) \le Sum(l, r)$$$ 的所有区间个数,即有多少种满足条件的 $$$[l, r]$$$。

$$$n \le 10^5,~1 \le a_i,~b_i \le 10^9$$$。

Input

第一行一个数字 $$$n$$$ ,表示 $$$a$$$, $$$b$$$ 两个数组的长度

第二行 $$$n$$$ 个数,第 $$$i$$$ 个数表示 $$$a_i$$$

第三行 $$$n$$$ 个数,第 $$$i$$$ 个数表示 $$$b_i$$$

Output

一个数字表示满足条件的区间个数。

Example
Input
3
2 2 2
1 2 1
Output
4

D. 战至终章
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

这是诸魔横行的世界,黑暗的火焰在此间每一角落燃烧,永恒不息......

你是人类中最为强大的勇者,在这乱世之中,经历过无数次生死之战。这一天,你终于决定,前往世界最为中心的魔渊逆伐诸魔,那是古久之前人类的家,而如今却成为了魔神的乐园。

魔渊中一共居住着$$$n$$$位魔神,击败第$$$i$$$位魔神至少需要你达到$$$a_{i}$$$的战力,击败第$$$i$$$位魔神后你的战力将会提升$$$b_{i}$$$。但有些魔神的宫殿需要魔钥才能解锁,击败编号为$$$i$$$的魔神可以获得编号为$$$i$$$的魔钥。只有集齐第$$$i$$$位魔神的宫殿需要的所有魔钥,才能有挑战第$$$i$$$位魔神的资格。

你可以无休止的战斗,直至魔渊中再也没有可以你可以战胜的魔神为止。

请告诉我,你最终可以战胜多少魔神,他们的编号分别是多少?

ps:保证不存在魔神的宫殿最终需要击败居住其中的魔神才能够解锁,即,若对魔钥编号向魔神宫殿编号连有向边,建成的图中不存在环。

Input

第一行包含两个整数$$$n$$$和$$$p$$$,代表魔神的数量和你的初始战力。

第二行包含n个整数$$$a_{1} \ldots a_{n}$$$,代表击败各魔神所需的战力。

第二行包含n个整数$$$b_{1} \ldots b_{n}$$$,代表击败各魔神能够提升的战力。

接下来$$$n$$$行,第$$$i$$$行先输入一个整数$$$k_{i}$$$,表示开启编号为$$$i$$$的魔神的宫殿所需的魔钥数量,随后输入$$$k_{i}$$$个整数,分别表示魔钥的编号。

数据范围:

$$$1\le n\le 2\cdot 10^5$$$;

$$$0\le p,a_{i},b_{i}\le 10^9$$$;

$$$0 \le \sum_{i=1}^{n} k_{i}\le 2\cdot 10^5$$$;

Output

第一行输出一个整数$$$w$$$,表示最终能击败的魔神数量。

第二行输出$$$w$$$个整数,分别表示你最终击败的魔神编号,要求升序输出。

Example
Input
4 5
5 8 9 15
3 2 3 1
0
1 1
1 1
1 3
Output
3
1 2 3 

E. LOL
time limit per test
4 seconds
memory limit per test
512 megabytes
input
standard input
output
standard output

一个长度为 $$$n$$$,只含字母 $$$L$$$ 和 $$$O$$$ 组成的字符串 $$$S~=~s_1~s_2~\ldots~s_n$$$ 。定义一个字符串的子序列为将字符串中的若干个字符去掉,得到的字符串。现在,对字符串 $$$S$$$ 进行以下两种操作:

  • 操作 $$$1~l~r$$$,表示输出字符串 $$$s'=s_l,s_{l+1},\ldots,s_r]$$$ 中含多少个子序列 $$$LOL$$$;
  • 操作 $$$2~l~r$$$,表示将字符串 $$$s'=s_l,s_{l+1},\ldots,s_r$$$ 中的 $$$L$$$ 变成 $$$O$$$,$$$O$$$ 变成 $$$L$$$。

请按操作序列依次进行操作,依次输出操作 $$$1$$$ 的结果。

Input

第一行给出 $$$n$$$ 和 $$$t$$$ 分别表示字符串的长度和询问次数。 第二行给出一个长度为 $$$n$$$ 的字符串 $$$S$$$,保证 $$$s$$$ 只由 $$$L,O$$$ 组成。 接下来 $$$t$$$ 行,每行一个操作,包含三个整数,$$$opt,l,r,~(1 \le opt \le 2,1 \le l \le r \le n)$$$。

Output

对于每个 $$$opt$$$ 为 $$$1$$$ 时输出一行,包含一个整数,为对应的结果。

Example
Input
5 5
LOLOL
1 1 5
2 1 5
1 1 5
2 3 5
1 3 5
Output
4
1
1
Note

$$$1 \le n \le 3 \times 10^5,~1 \le t \le 3 \times 10^5$$$

F. 810975
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

$$$\text{Gunshin}$$$ 最近很喜欢一串神秘数字 "810975",所以他喜欢所有没有前导零的且含有"810975"作为子序列的数字。 一个数字 $$$x$$$ 含有子序列 $$$s$$$ 表示从 $$$x$$$中 删除若干数字后能得到 $$$s$$$。 $$$\text{Gunshin}$$$ 想知道第$$$k$$$大的他喜欢的数字是多少,请你回答他。

Input

输入一个正整数$$$k(1\leq{k}\leq{10^{15}})$$$。

Output

输出一个数,表示第$$$k$$$大$$$\text{Gunshin}$$$喜欢的数。

Examples
Input
1
Output
810975
Input
2
Output
1810975
Input
12
Output
8102975
Input
1000000000000000
Output
220387241614091751