#牛客在线求职答疑中心#小欧有一个长度为n的数组{a1,a2,….,an},他可以进行任意次操作:•选择1≤i,j≤n,i≠j,执行ai=ai+1同时aj=aj-1。(前提是aj>1,也就是说操作后数组的所有元素都必须还是正整数。)他想从数组中选择一个子序列,使得子序列是一个排列,请问在可以进行任意次上述操作的前提下,这个“排列子序列”的长度最长是多少?定义子序列为从原数组中删除任意数量(可以为零、可以为全部)的元素所得到的新数组。长度为n的排列是由1~n这n个整数、按任意顺序组成的数组,每个整数恰好出现一次。例如,{2,3,1,5,4}是一个排列,但{1,2,2}不是一个排列(数组中的2出现了两次),{1,3,4}也不是一个排列(长度为3但数组中有4)。|输入描述第一行输入一个正整数n(1≤n≤10^5)代表数组中的元素数量。第二行输入n个正整数a1,a2,...,an(1≤ai≤10^5)代表数组元素。| 输出描述在一行上输出一个整数,代表最长的“排列子序列”长度。说明可以选择i=3,j=4,操作两次,数组a变为[1,2,7,3],可以选择的最长排列子序列为[1,2,3],长度为3。示例:输入:41 2 5 5输出:3用python编程