当前位置: 首页 > wzjs >正文

自己弄个网站河北省中级经济师考试

自己弄个网站,河北省中级经济师考试,王也最后结局,免费不需要vip的追剧软件记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步 目录 6/16 2016. 增量元素之间的最大差值6/17 3405. 统计恰好有 K 个相等相邻元素的数组数目6/18 2966. 划分数组并满足最大差限制6/19 2294. 划分数组使最大差为 K6/20 3443. K…

记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步


目录

      • 6/16 2016. 增量元素之间的最大差值
      • 6/17 3405. 统计恰好有 K 个相等相邻元素的数组数目
      • 6/18 2966. 划分数组并满足最大差限制
      • 6/19 2294. 划分数组使最大差为 K
      • 6/20 3443. K 次修改后的最大曼哈顿距离
      • 6/21 3085. 成为 K 特殊字符串需要删除的最少字符数
      • 6/22 2138. 将字符串拆分为若干长度为 k 的组


6/16 2016. 增量元素之间的最大差值

为了使差值最大 尽量使得nums[i]小
从左到右 使用minv 记录当前位置之前的最小值

def maximumDifference(nums):""":type nums: List[int]:rtype: int"""ans = -1minv = nums[0]for j in range(1,len(nums)):if nums[j]>minv:ans=max(ans,nums[j]-minv)minv=min(minv,nums[j])return ans

6/17 3405. 统计恰好有 K 个相等相邻元素的数组数目

k对相邻元素相同 n-1-k对相邻元素不同
不同的可以看作分割线 得到n-k段子数组
C(n-1,k)m(m-1)^(n-k-1)

def countGoodArrays(n, m, k):""":type n: int:type m: int:type k: int:rtype: int"""MOD=10**9+7MX=10**5f=[0]*MXinvf=[0]*MXf[0]=1for i in range(1,MX):f[i]=f[i-1]*i%MODinvf[MX-1]=pow(f[-1], -1,MOD)for i in range(MX-1,0,-1):invf[i-1]=invf[i]*i%MODdef comb(n,m):return f[n]*invf[m]*invf[n-m]%MODreturn comb(n-1,k)*m*pow(m-1, n-1-k,MOD)%MOD

6/18 2966. 划分数组并满足最大差限制

排序后 依次分组必定是差值最小的

def divideArray(nums, k):""":type nums: List[int]:type k: int:rtype: List[List[int]]"""nums.sort()ans = []for i in range(0,len(nums),3):if nums[i+2]-nums[i]>k:return []ans.append(nums[i:i+3])return ans

6/19 2294. 划分数组使最大差为 K

从小到大排列 尽可能排进同一个序列

def partitionArray(nums, k):""":type nums: List[int]:type k: int:rtype: int"""nums.sort()ans=1cur=nums[0]for num in nums[1:]:if cur+k<num:cur=numans+=1return ans

6/20 3443. K 次修改后的最大曼哈顿距离

东西、南北互不影响
对于一串方向 修改其中较少的方向 可以使距离更远

def maxDistance(s, k):""":type s: str:type k: int:rtype: int"""NS,EW=0,0ans=0for i in range(len(s)):if s[i]=='N':NS+=1elif s[i]=='S':NS-=1elif s[i]=='E':EW+=1elif s[i]=='W':EW-=1ans = max(ans,min(abs(NS)+abs(EW)+2*k,i+1))return ans

6/21 3085. 成为 K 特殊字符串需要删除的最少字符数

一共26个字母 枚举每个字母成为最少字符的情况

def minimumDeletions(word, k):""":type word: str:type k: int:rtype: int"""from collections import defaultdictcnt=defaultdict(int)for w in word:cnt[w]+=1ans = len(word)for c in cnt.values():d = 0for w in cnt.values():if c>w:d+=welif w>c+k:d+=w-c-kans=min(ans,d)return ans

6/22 2138. 将字符串拆分为若干长度为 k 的组

依次取k个生成放入ans 最后如果不足k 则补充fill

def divideString(s, k, fill):""":type s: str:type k: int:type fill: str:rtype: List[str]"""n=len(s)ans=[]for i in range(0,n,k):if i+k<=n:ans.append(s[i:i+k])else:ans.append(s[i:]+fill*(k-n%k))return ans

http://www.dtcms.com/wzjs/565902.html

相关文章:

  • 首次登陆建设银行网站图文解说网页历史记录在哪里
  • 做外汇最好的财经网站网商之窗挂
  • 网站建设哪里实惠福州seo快速排名软件
  • 佛山网站建设哪家评价高西安网站建设创意
  • 网站搭建软件有哪些网站建设声明函
  • 网站开发需求问卷老师让做网站怎么做
  • 专门做中式服装平台的网站岳阳网站开发报价
  • 中国公司查询网站绿色农业网站源码
  • 免费企业建站系统源码wordpress文章摘录
  • 有哪些网站可以做简历知名商城网站建设
  • 沈阳开发网站朗域装饰公司电话
  • asp做的网站asp源代码破解网站后台账号密码
  • 凉山网站建设兰州市七里河建设局网站
  • 外贸网站建设流程手机赚钱
  • 个人网站开发背景及意义十大免费跨境电商平台
  • 网站开发应如何入账wordpress迁移换域名
  • 外国做水吧设计的网站关键词排名公司
  • 网站内链 工具wordpress get_search_form()多个条件查询
  • 黄金网站app免费视频大全武安做网站
  • 怎么建立本地网站网络平台宣传方式有哪些
  • 河南省住房和城乡建设厅门户网站西安建筑网站建设
  • 规范门户网站的建设和管理办法wordpress获取文章中的图片
  • 国外二手手表网站惠州app开发公司
  • 南京汽车企业网站建设青蛙网站建设
  • 贵州省建设厅官方网站官网北京最大的互联网公司
  • 遵义在线网站建设黄页号码是啥
  • 用html建设网站阿里云 wordpress 安装
  • 建设网站要备案吗wordpress 调试插件
  • windows 2008 搭建网站seo sem sns的区别
  • 专业网站建站字体大全