Acwing46周周赛


取石子

两个小朋友玩取石子游戏。

第一个小朋友面前有 $n_1$ 个石子,第二个小朋友面前有 $n_2$ 个石子。

两人轮流取自己面前的石子。

第一个小朋友先手,第二个小朋友后手。

第一个小朋友每轮次最多取 $k_1$ 个石子,最少取 $1$ 个石子。

第二个小朋友每轮次最多取 $k_2$ 个石子,最少取 $1$ 个石子。

率先取完自己面前石子的小朋友,视为失败

请问,两个小朋友都采取最优策略的情况下,谁会获胜

输入格式

一行,四个整数 $n_1,n_2,k_1,k_2$。

输出格式

如果第一个小朋友获胜,则输出 First,如果第二个小朋友获胜,则输出 Second

数据范围

所有测试点满足 $1 \le n_1,n_2,k_1,k_2 \le 50$。

输入样例1:

2 2 1 2

输出样例1:

Second

输入样例2:

2 1 1 1

输出样例2:

First

卡牌

有 $n$ 张卡牌,编号 $1 \sim n$。

每张卡牌的正面和背面都各有一个数字。

第 $i$ 张卡牌的正面数字为 $a_i$,背面数字为 $b_i$。

初始时,所有卡牌都正面朝上,显示正面的数字。

现在,你可以将其中一些卡牌翻面,使其显示背面的数字,要求:

  1. 至少有 $k$ 张卡牌保持正面朝上。
  2. 所有卡牌显示的数字之和尽可能小。

输出所有卡牌显示的数字之和的最小可能值。

输入格式

第一行包含两个整数 $n,k$。

第二行包含 $n$ 个整数 $a_1,a_2,…,a_n$。

第三行包含 $n$ 个整数 $b_1,b_2,…,b_n$。

输出格式

一个整数,表示所有卡牌显示的数字之和的最小可能值。

数据范围

前 $6$ 个测试点满足 $1 \le n \le 10$。
所有测试点满足 $1 \le n \le 2 \times 10^5$,$0 \le k \le n$,$1 \le a_i,b_i \le 10^4$。

输入样例1:

3 1
5 4 6
3 1 5

输出样例1:

10

输入样例2:

5 3
3 4 7 10 3
4 5 5 12 5

输出样例2:

25

查询字符串

给定 $n$ 个字符串 $f_1,f_2,…,f_n$。

这些字符串两两不同。

下面给定 $q$ 个询问。

其中,第 $i$ 次询问给定一个字符串 $s_i$,你的任务是:

  1. 计算 $f_1 \sim f_n$ 这 $n$ 个字符串中,包含 $s_i$ 作为子串的字符串的数量。
  2. 从 $f_1 \sim f_n$ 这 $n$ 个字符串中,任选一个包含 $s_i$ 作为子串的字符串输出。

输入格式

第一行包含整数 $n$。

接下来 $n$ 行,其中第 $i$ 行包含字符串 $f_i$。

再一行包含整数 $q$。

接下来 $q$ 行,其中第 $i$ 行包含字符串 $s_i$。

所有 $f_i$ 和 $s_i$ 都只包含小写字母、数字以及 .

输出格式

共 $q$ 行,其中第 $i$ 行输出第 $i$ 个询问的答案。

首先输出 $f_1 \sim f_n$ 这 $n$ 个字符串中包含 $s_i$ 作为子串的字符串的数量。

然后从 $f_1 \sim f_n$ 这 $n$ 个字符串中任选一个包含 $s_i$ 作为子串的字符串输出。

如果这样的字符串不唯一,则输出任意合理字符串均可,如果这样的字符串不存在,则输出 -

数据范围

前三个测试点满足 $1 \le n,q \le 20$。
所有测试点满足 $1 \le n \le 10000$,$1 \le q \le 50000$,$1 \le |f_i|,|s_i| \le 8$。

输入样例:

4
test
contests
test.
.test
6
ts
.
st.
.test
contes.
st

输出样例:

1 contests
2 .test
1 test.
1 .test
0 -
4 test.

文章作者: 小小星仔
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 小小星仔 !
评论
  目录