302022-12【TPC-18】迎元旦 & 拓尔思 2022年 12 月月赛 - Div2. 中学组

16 篇文章 0 订阅
13 篇文章 0 订阅

素数的积

题目描述

给定一个偶数 nn,请求出两个素数 pp 与 qq,使得 p+q=np+q=n 且 p\times qp×q 最大,输出这个最大的积。

输入格式

单个整数:表示输入的偶数 nn

输入格式

单个整数:表示最大的积。

样例

输入数据#1

6

Copy

输出数据#1

9

Copy

解释#1

3+3=6, 3*3=9

输入数据#2

100

Copy

输出数据#2

2491

Copy

数据范围

  • 50\%50% 的数据满足:4\leq n\leq 10^54≤n≤105

  • 100\%100% 的数据满足:4\leq n\leq 10^94≤n≤109

圆环选址

题目描述

给定一个长度为 nn 的环状数列 a_1,a_2,\cdots, a_na1,a2,⋯,an,所谓环状,是指在考虑相邻关系时,需要把 a_1a1 和 a_nan 也看做是一对邻居。

数列的每个位置上都有一堆物资,数列上的每个数字表示该堆物资的数量。我们希望从 nn 个位置中挑选一个位置,使得所有物资能聚集到一起,而且运费总和达到最小。

物资只能沿着相邻位置搬运,每当一个单位物资的移动一个单位距离时,需要支付一个单位的运费。请问如何选择一个聚集点,使得运费总和达到最小?

输入格式

第一行:单个整数表示 nn

第二行:nn 个整数表示 a_1, a_2, \cdots, a_na1,a2,⋯,an

输入格式

单个整数:表示将所有物资移动到一起的最小总运费。

样例

输入数据#1

5
1 2 3 4 5

Copy

输出数据#1

14

Copy

解释#1

选择 44 作为聚集点,运费计算公式为 1*2+2*2+3*1+5*1=141∗2+2∗2+3∗1+5∗1=14

选择 55 作为聚集点,运费计算公式为 1*1+2*2+3*2+4*1=151∗1+2∗2+3∗2+4∗1=15

数据范围

  • 对于 30\%30% 的数据,1\leq n\leq 1001≤n≤100;

  • 对于 60\%60% 的数据,1\leq n\leq 20001≤n≤2000;

  • 对于 100\%100% 的数据,1\leq n\leq 500,0001≤n≤500,000,

  • 0\leq a_i\leq 1,000,0000≤ai≤1,000,000。

字母补全

题目描述

给定一个由大写字母构成的字符串 ss

字符串 ss 中的若干个(也可能没有)字符缺失了,缺失的字符用 ? 表示。

现在,请你将字符串进行补全,即将字符串中的每个 ? 字符都替换为一个任意大写字母(A - Z)。

要求,补全后的字符串至少包含一个长度为 2626 的连续子串,在该子串中,每个大写字母恰好出现一次。

输入格式

共一行,一个字符串 ss,其中的每个字符都是大写字母(A - Z)或问号(?)。

输出格式

如果不存在合理的补全方案,得到满足条件的完整字符串,则输出 -1−1。

如果存在合理的补全方案,则输出补全后的字符串。

如果方案不唯一,输出任意合理方案均可。

样例

输入数据#1

ABC??FGHIJK???OPQR?TUVWXY?

Copy

输出数据#1

ABCDEFGHIJKLMNOPQRZTUVWXYS

Copy

输入数据#2

ABCDEFGHIJKLMNOPQRSTUVWXY

Copy

输出数据#2

-1

Copy

输入数据#3

??????????????????????????

Copy

输出数据#3

MNBVCXZLKJHGFDSAQPWOEIRUYT

Copy

输入数据#4

AABCDEFGHIJKLMNOPQRSTUVW??M

Copy

输出数据#4

-1

Copy

数据范围

  • 前 66 个测试点满足 1 \le |s| \le 1001≤∣s∣≤100。

  • 所有测试点满足 1 \le |s| \le 500001≤∣s∣≤50000。

摆放棋子

展开

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

给定 n_1n1 个完全相同的黑色棋子和 n_2n2 个完全相同的白色棋子。

请你将所有棋子摆成一排。

在所有棋子都摆放好后,需满足:

  1. 不得有超过 k_1k1 (即大于 k_1k1)个黑色棋子连续相邻的排在一起。

  1. 不得有超过 k_2k2 (即大于 k_2k2)个白色棋子连续相邻的排在一起。

请问一共有多少种不同的摆放方法。

由于结果可能很大,你只需要输出对 10^8108 取模后的结果。

输入格式

共一行,包含 44 个整数 n_1,n_2,k_1,k_2n1,n2,k1,k2。

输出格式

输出满足要求的摆放方法数量对 10^8108 取模后的结果。

输入数据#1

2 1 1 10

Copy

输出数据#1

1

Copy

输入数据#2

2 3 1 2

Copy

输出数据#2

5

Copy

输入数据#3

2 4 1 1

Copy

输出数据#3

0

Copy

数据范围

  • 对于 40\%40% 的数据: 1 \le n_1,n_2 \le 101≤n1,n2≤10。

  • 对于 100\%100% 的数据: 1 \le n_1,n_2 \le 1001≤n1,n2≤100,1 \le k_1,k_2 \le 101≤k1,k2≤10。

摆放棋子

展开

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

给定 n_1n1 个完全相同的黑色棋子和 n_2n2 个完全相同的白色棋子。

请你将所有棋子摆成一排。

在所有棋子都摆放好后,需满足:

  1. 不得有超过 k_1k1 (即大于 k_1k1)个黑色棋子连续相邻的排在一起。

  1. 不得有超过 k_2k2 (即大于 k_2k2)个白色棋子连续相邻的排在一起。

请问一共有多少种不同的摆放方法。

由于结果可能很大,你只需要输出对 10^8108 取模后的结果。

输入格式

共一行,包含 44 个整数 n_1,n_2,k_1,k_2n1,n2,k1,k2。

输出格式

输出满足要求的摆放方法数量对 10^8108 取模后的结果。

输入数据#1

2 1 1 10

Copy

输出数据#1

1

Copy

输入数据#2

2 3 1 2

Copy

输出数据#2

5

Copy

输入数据#3

2 4 1 1

Copy

输出数据#3

0

Copy

数据范围

  • 对于 40\%40% 的数据: 1 \le n_1,n_2 \le 101≤n1,n2≤10。

  • 对于 100\%100% 的数据: 1 \le n_1,n_2 \le 1001≤n1,n2≤100,1 \le k_1,k_2 \le 101≤k1,k2≤10。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值