获得徽章 17
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
#每日一题#
题目描述:
对于给定的整数序列 A={a1,a2,…,an},找出两个不重合连续子段,使得两子段中所有数字的和最大。
输入格式:
第一行是一个整数 T,代表一共有多少组数据。
接下来是 T 组数据。
每组数据的第一行是一个整数,代表数据个数据 n,第二行是 n 个整数 a1,a2,…,an。
输出格式:
每组数据输出一个整数,占一行,就是 d(A) 的值。
C++代码(线性DP):
code.juejin.cn
题目描述:
对于给定的整数序列 A={a1,a2,…,an},找出两个不重合连续子段,使得两子段中所有数字的和最大。
输入格式:
第一行是一个整数 T,代表一共有多少组数据。
接下来是 T 组数据。
每组数据的第一行是一个整数,代表数据个数据 n,第二行是 n 个整数 a1,a2,…,an。
输出格式:
每组数据输出一个整数,占一行,就是 d(A) 的值。
C++代码(线性DP):
展开
评论
点赞
#每日一题#
题目描述:
n 个小朋友站成一排,等着吃水果。
一共有 m 种水果,每种水果的数量都足够多。
现在,要给每个小朋友都发一个水果,要求:在所有小朋友都拿到水果后,恰好有 k 个小朋友拿到的水果和其左边相邻小朋友拿到的水果不同(最左边的小朋友当然不算数,即最左边的小朋友不包含在 k 个小朋友内)。
请你计算,一共有多少种不同的分发水果的方案。
输入格式:
一行,三个整数 n,m,k。
输出格式:
一个整数,表示合理的分发水果的方案总数量对 998244353 取模后的结果。
C++代码(组合数学):
code.juejin.cn
题目描述:
n 个小朋友站成一排,等着吃水果。
一共有 m 种水果,每种水果的数量都足够多。
现在,要给每个小朋友都发一个水果,要求:在所有小朋友都拿到水果后,恰好有 k 个小朋友拿到的水果和其左边相邻小朋友拿到的水果不同(最左边的小朋友当然不算数,即最左边的小朋友不包含在 k 个小朋友内)。
请你计算,一共有多少种不同的分发水果的方案。
输入格式:
一行,三个整数 n,m,k。
输出格式:
一个整数,表示合理的分发水果的方案总数量对 998244353 取模后的结果。
C++代码(组合数学):
展开
评论
1
#每日一题#
题目描述:
约翰的农场可以看作一个二维平面。
农场中有 n 个老鼠,在毁坏着农田。
第 i 个老鼠的位置坐标为 (xi,yi)。
不同老鼠可能位于同一位置。
在 (x0,y0) 处,装有一个双向发射的激光枪,该位置没有老鼠。
激光枪每次发射都可以将穿过点 (x0,y0) 的某一条直线上的所有老鼠都消灭掉。
请问,为了消灭所有老鼠,至少需要激光枪发射几次。
输入格式:
第一行包含三个整数 n,x0,y0,表示共有 n 只老鼠,激光枪的位置为 (x0,y0)。
接下来 n 行,每行包含两个整数 xi,yi,表示第 i 只老鼠的位置为 (xi,yi)。
输出格式:
一个整数,表示激光枪的最少发射次数。
C++代码(最大公约数):
code.juejin.cn
题目描述:
约翰的农场可以看作一个二维平面。
农场中有 n 个老鼠,在毁坏着农田。
第 i 个老鼠的位置坐标为 (xi,yi)。
不同老鼠可能位于同一位置。
在 (x0,y0) 处,装有一个双向发射的激光枪,该位置没有老鼠。
激光枪每次发射都可以将穿过点 (x0,y0) 的某一条直线上的所有老鼠都消灭掉。
请问,为了消灭所有老鼠,至少需要激光枪发射几次。
输入格式:
第一行包含三个整数 n,x0,y0,表示共有 n 只老鼠,激光枪的位置为 (x0,y0)。
接下来 n 行,每行包含两个整数 xi,yi,表示第 i 只老鼠的位置为 (xi,yi)。
输出格式:
一个整数,表示激光枪的最少发射次数。
C++代码(最大公约数):
展开
评论
1
#每日一题#
题目描述:
给定两个整数 n 和 k,请你判断在 [2,n] 的范围内是否存在不少于 k 个质数,满足可以表示为两个相邻质数与 1 的和。
例如,19 满足条件,因为 19=7+11+1。
输入格式:
第一行包含整数 T,表示共有 T 组测试数据。
每组数据占一行,包含两个整数 n 和 k。
输出格式:
每组数据输出占一行,如果存在不少于 k 个质数满足条件则输出 YES,否则输出 NO。
C++代码(筛质数):
code.juejin.cn
题目描述:
给定两个整数 n 和 k,请你判断在 [2,n] 的范围内是否存在不少于 k 个质数,满足可以表示为两个相邻质数与 1 的和。
例如,19 满足条件,因为 19=7+11+1。
输入格式:
第一行包含整数 T,表示共有 T 组测试数据。
每组数据占一行,包含两个整数 n 和 k。
输出格式:
每组数据输出占一行,如果存在不少于 k 个质数满足条件则输出 YES,否则输出 NO。
C++代码(筛质数):
展开
评论
1
#每日一题#
题目描述:
农夫约翰上周刚刚建好了新的牛棚,并引进了最新的挤奶技术。
不幸的是,由于工程问题,牛棚中的每个单间都不太一样。
第一周,约翰将奶牛们随机分配在了各个单间中。
但是很快他就发现,每头奶牛都只愿意在一部分自己喜欢的单间中产奶。
在过去的一周中,农夫约翰一直在收集有关哪些奶牛愿意在哪些单间产奶的数据。
一个单间只能分配给一头奶牛,当然,一头奶牛也可能只愿意在一个单间中产奶。
给定奶牛的住宿喜好,请你计算,通过合理分配奶牛的住所,最多能够让多少奶牛可以住在自己愿意产奶的单间中。
输入格式:
第一行包含两个整数 N 和 M,分别表示奶牛的数量以及单间的数量。
接下来 N 行,每行记录一个奶牛愿意产奶的单间信息。首先包含一个整数 Si,表示这头奶牛愿意在 Si 个单间中产奶。接下来包含 Si 个不同的整数,表示这些单间的编号。
所有单间的编号为 1∼M。
输出格式:
输出一个整数,表示可以被分配在自己愿意产奶的单间中的奶牛的最大数量。
C++代码(匈牙利算法):
code.juejin.cn
题目描述:
农夫约翰上周刚刚建好了新的牛棚,并引进了最新的挤奶技术。
不幸的是,由于工程问题,牛棚中的每个单间都不太一样。
第一周,约翰将奶牛们随机分配在了各个单间中。
但是很快他就发现,每头奶牛都只愿意在一部分自己喜欢的单间中产奶。
在过去的一周中,农夫约翰一直在收集有关哪些奶牛愿意在哪些单间产奶的数据。
一个单间只能分配给一头奶牛,当然,一头奶牛也可能只愿意在一个单间中产奶。
给定奶牛的住宿喜好,请你计算,通过合理分配奶牛的住所,最多能够让多少奶牛可以住在自己愿意产奶的单间中。
输入格式:
第一行包含两个整数 N 和 M,分别表示奶牛的数量以及单间的数量。
接下来 N 行,每行记录一个奶牛愿意产奶的单间信息。首先包含一个整数 Si,表示这头奶牛愿意在 Si 个单间中产奶。接下来包含 Si 个不同的整数,表示这些单间的编号。
所有单间的编号为 1∼M。
输出格式:
输出一个整数,表示可以被分配在自己愿意产奶的单间中的奶牛的最大数量。
C++代码(匈牙利算法):
展开
评论
点赞
#每日一题#
题目描述:
给定一个 n 个结点(编号 1∼n)构成的二叉树,其根结点为 1 号点。
进行 m 次询问,每次询问两个结点之间的最短路径长度。
树中所有边长均为 1。
输入格式:
第一行包含一个整数 T,表示共有 T 组测试数据。
每组数据第一行包含两个整数 n,m。
接下来 n 行,每行包含两个整数,其中第 i 行的整数表示结点 i 的子结点编号。如果没有子结点则输出 −1。
接下来 m 行,每行包含两个整数,表示要询问的两个结点的编号。
输出格式:
每组测试数据输出 m 行,代表查询的两个结点之间的最短路径长度。
C++代码(LCA):
code.juejin.cn
题目描述:
给定一个 n 个结点(编号 1∼n)构成的二叉树,其根结点为 1 号点。
进行 m 次询问,每次询问两个结点之间的最短路径长度。
树中所有边长均为 1。
输入格式:
第一行包含一个整数 T,表示共有 T 组测试数据。
每组数据第一行包含两个整数 n,m。
接下来 n 行,每行包含两个整数,其中第 i 行的整数表示结点 i 的子结点编号。如果没有子结点则输出 −1。
接下来 m 行,每行包含两个整数,表示要询问的两个结点的编号。
输出格式:
每组测试数据输出 m 行,代表查询的两个结点之间的最短路径长度。
C++代码(LCA):
展开
评论
1