![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编程题
Jared�
这个作者很懒,什么都没留下…
展开
-
【编程题练习】牛客-阿里:二叉树(卡特兰数)
小强现在有nn个节点,他想请你帮他计算出有多少种不同的二叉树满足节点个数为nn且树的高度不超过mm的方案.因为答案很大,所以答案需要模上1e9+7后输出.树的高度: 定义为所有叶子到根路径上节点个数的最大值.输入描述:第一行输入两个正整数n和m输出描述:输出一个答案表示方案数.示例1输入3 3输出5'''卡特兰数问题:h(n)= h(0)*h(n-1)+h(1)*h(n-2) + ... + h(n-1)*h(0) (n>=2)= C(2*n,n)/(n+1)'原创 2021-08-04 22:22:31 · 1399 阅读 · 1 评论 -
【编程题练习】牛客-阿里:小强爱数学
小强发现当已知x+y=A以及xy=B时,能很轻易的算出的x^2 + y^2值.但小强想请你在已知A和B的情况下,计算出x^n + y^n的值.因为这个结果可能很大,所以所有的运算都在模1e9+7下进行.输入描述:第一行输入一个正整数T.表示有T组数据 接下来T行,每行输入三个整数A,B和n.输出描述:输出T行,每一行表示每组数据的结果.示例1输入34 4 32 3 45 2 6输出169999999939009'''感觉是一个递归问题,数学问题'''mod = i原创 2021-08-04 15:39:48 · 754 阅读 · 0 评论 -
【编程题练习】牛客-阿里:子集
小强现在有n个物品,每个物品有两种属性Xi和Yi.他想要从中挑出尽可能多的物品满足以下条件:对于任意两个物品和,满足或者.问最多能挑出多少物品.'''最长上升子序列问题动态规划或二分法动态规划不满足时间要求'''T = int(input())def binarysearch(y_value): arr = [0] maxlength = 1 arr.append(y_value[0]) ''' 具体操作如下(by RyanWang): 开一原创 2021-08-04 00:14:36 · 2026 阅读 · 3 评论 -
【编程题练习】牛客-阿里:蚂蚁森林之王
很久很久以前,在蚂蚁森林里住着 n只小动物,编号从 1到n 。编号越小的动物能力值越大。现在他们想投票选出一只小动物当森林之王,对于每只小动物来说,如果他有崇拜的对象,那么他可能投票选择自己,或与自己崇拜的对象投相同票;如果他没有崇拜的对象,那么他投票只可能选择自己。每只小动物只会崇拜能力值比自己大的小动物。记者小强拜访了这 n只小动物,了解到每只小动物是否有崇拜的对象以及具体是谁。现在他想知道每个人能得到的最高票数是多少。输入描述:第一行一个正整数 n ,代表小动物的数量。第二行n 个以空格原创 2021-08-03 17:29:12 · 385 阅读 · 0 评论 -
【编程题练习】牛客-阿里:小强的神奇矩阵
小强有一个的矩阵,他将中每列的三个数字中取出一个按顺序组成一个长度为n的数组b,即bi可以是其中任意一个。问的最小值是多少。输入描述:第一行,一个正整数n。第二行到第四行输入一个3*n的矩阵,每行输入n个正整数。输出描述: 一行一个正整数表示答案。输入例子1:55 9 5 4 44 7 4 10 32 10 9 2 3输出例子1:5'''动态规划问题'''n = int(input())nums = [ [] for i in range(3)]for i原创 2021-08-03 16:58:22 · 346 阅读 · 0 评论 -
【编程题练习】牛客-阿里:国际交流会
最近小强主办了一场国际交流会,大家在会上以一个圆桌围坐在一起。由于大会的目的就是让不同国家的人感受一下不同的异域气息,为了更好地达到这个目的,小强希望最大化邻座两人之间的差异程度和。为此,他找到了你,希望你能给他安排一下座位,达到邻座之间的差异之和最大。输入描述:输入总共两行。第一行一个正整数n,代表参加国际交流会的人数(即圆桌上所坐的总人数,不单独对牛牛进行区分)第二行包含n个正整数,第i个正整数a_i代表第i个人的特征值。其中注意: 每对邻座差异值只计算一次。输出描述: 输出总共原创 2021-08-03 16:32:26 · 393 阅读 · 0 评论 -
【编程题练习】牛客-阿里:小强修水渠
在一张地图上小强有座房子,因为地理位置的原因没有办法给每座房子提供水源,所以小强打算修建一条平行轴的水渠.因为这条水渠无限长.所以能够看做是一条平行于轴的直线. 现在小强想确定修建水渠的位置,能够使得这座房子到水渠的垂直距离和最小,请你输出最小的距离和.输入描述: 第一行输入一个正整数. 接下来行,每行输入两个正整数,分别表示每个房子所在的二维坐标.输出描述: 输出一个整数表示答案输入例子1:40 00 5050 5050 0输出例子1:100例子说明1:当修建水渠位置原创 2021-08-03 16:11:42 · 472 阅读 · 0 评论