素数的积
题目描述
给定一个偶数 nn,请求出两个素数 pp 与 qq,使得 p+q=np+q=n 且 p\times qp×q 最大,输出这个最大的积。
输入格式
单个整数:表示输入的偶数 nn。
输入格式
单个整数:表示最大的积。
样例
输入数据#1
6
输出数据#1
9
解释#1
3+3=6, 3*3=9
输入数据#2
100
输出数据#2
2491
数据范围
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
输出数据#1
14
解释#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?
输出数据#1
ABCDEFGHIJKLMNOPQRZTUVWXYS
输入数据#2
ABCDEFGHIJKLMNOPQRSTUVWXY
输出数据#2
-1
输入数据#3
??????????????????????????
输出数据#3
MNBVCXZLKJHGFDSAQPWOEIRUYT
输入数据#4
AABCDEFGHIJKLMNOPQRSTUVW??M
输出数据#4
-1
数据范围
前 66 个测试点满足 1 \le |s| \le 1001≤∣s∣≤100。
所有测试点满足 1 \le |s| \le 500001≤∣s∣≤50000。
摆放棋子
展开
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
给定 n_1n1 个完全相同的黑色棋子和 n_2n2 个完全相同的白色棋子。
请你将所有棋子摆成一排。
在所有棋子都摆放好后,需满足:
不得有超过 k_1k1 (即大于 k_1k1)个黑色棋子连续相邻的排在一起。
不得有超过 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
输出数据#1
1
输入数据#2
2 3 1 2
输出数据#2
5
输入数据#3
2 4 1 1
输出数据#3
0
数据范围
对于 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 个完全相同的白色棋子。
请你将所有棋子摆成一排。
在所有棋子都摆放好后,需满足:
不得有超过 k_1k1 (即大于 k_1k1)个黑色棋子连续相邻的排在一起。
不得有超过 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
输出数据#1
1
输入数据#2
2 3 1 2
输出数据#2
5
输入数据#3
2 4 1 1
输出数据#3
0
数据范围
对于 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。