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

如何做起一个网站推广百度竞价推广的优势

如何做起一个网站推广,百度竞价推广的优势,用vs代码做网站,个人做网站开发题目描述 输入长度为 n n n 的一个正整数序列,要求输出序列中最长连号的长度。 连号指在序列中,从小到大的连续自然数。 输入格式 第一行,一个整数 n n n。 第二行, n n n 个整数 a i a_i ai​,之间用空格隔开…

题目描述

输入长度为 n n n 的一个正整数序列,要求输出序列中最长连号的长度。

连号指在序列中,从小到大的连续自然数。

输入格式

第一行,一个整数 n n n

第二行, n n n 个整数 a i a_i ai,之间用空格隔开。

输出格式

一个数,最长连号的个数。

输入输出样例

输入

10
1 5 6 2 3 4 5 6 8 9

输出

5

说明/提示

数据规模与约定

对于 100 % 100\% 100% 的数据,保证 1 ≤ n ≤ 1 0 4 1 \leq n \leq 10^4 1n104 1 ≤ a i ≤ 1 0 9 1 \leq a_i \leq 10^9 1ai109

方式-遍历

代码

class Solution:@staticmethoddef oi_input():"""从标准输入读取数据"""num, nums = int(input()), list(map(int, input().split()))return num, nums@staticmethoddef oi_test():"""提供测试数据"""return 10, [1, 5, 6, 2, 3, 4, 5, 6, 8, 9]@staticmethoddef solution(num, nums):'''遍历'''max_len, current = 1, 1  # 最大 与 当前for i in range(1, num):if nums[i] == nums[i - 1] + 1:current += 1max_len = max(max_len, current)else:current = 1print(max_len)oi_input = Solution.oi_input
oi_test = Solution.oi_test
solution = Solution.solutionif __name__ == '__main__':num, nums = oi_test()# num, nums = oi_input()solution(num, nums)

流程图

处理连续递增序列
nums[i] == nums[i-1]+1?
循环遍历i从1到num-1
current +=1
max_len = max(max_len, current)
进入下一个循环
重置current=1
遍历完成?
开始
主函数调用
读取输入数据
num, nums = oi_input()
初始化max_len=1, current=1
输出最长长度max_len
结束

方式-双指针-滑动窗口

代码

class Solution:@staticmethoddef oi_input():"""从标准输入读取数据"""num, nums = int(input()), list(map(int, input().split()))return num, nums@staticmethoddef oi_test():"""提供测试数据"""return 10, [1, 5, 6, 2, 3, 4, 5, 6, 8, 9]@staticmethoddef solution(num, nums):max_len, left = 1, 0for right in range(num - 1):  # right 表示当前检查的位置的前一个if nums[right + 1] != nums[right] + 1:left = right + 1# 窗口范围为 [left, right+1]# 前面加1 是因为 right 跟 right + 1 比的,括号外面加1 是因为要包含被减去的位置current_len = (right + 1 - left) + 1max_len = max(max_len, current_len)print(max_len)oi_input = Solution.oi_input
oi_test = Solution.oi_test
solution = Solution.solutionif __name__ == '__main__':num, nums = oi_test()# num, nums = oi_input()solution(num, nums)

流程图

滑动窗口处理
nums[right+1] == nums[right]+1?
循环right从0到num-2
移动左边界left=right+1
计算窗口长度
current_len = right+1 - left +1
更新max_len
右移right
开始
调用oi_input()
读取第一行输入→num
读取第二行输入→nums
初始化max_len=1, left=0
right < num-1?
输出max_len
结束

方式-递归-缓存

代码

class Solution:@staticmethoddef oi_input():"""从标准输入读取数据"""num, nums = int(input()), list(map(int, input().split()))return num, nums@staticmethoddef oi_test():"""提供测试数据"""return 10, [1, 5, 6, 2, 3, 4, 5, 6, 8, 9]@staticmethoddef solution(num, nums):import sysfrom functools import lru_cachesys.setrecursionlimit(1000000)  # 强行增大递归深度@lru_cache(maxsize=None)def max_consecutive_length_from_index(i):if i == 0:return 1if nums[i] == nums[i - 1] + 1:return max_consecutive_length_from_index(i - 1) + 1else:return 1print(max(max_consecutive_length_from_index(i) for i in range(num)))oi_input = Solution.oi_input
oi_test = Solution.oi_test
solution = Solution.solutionif __name__ == '__main__':num, nums = oi_test()# num, nums = oi_input()solution(num, nums)

流程图

递归函数处理
i == 0?
定义带缓存的递归函数max_consecutive_length_from_index
返回1
nums[i] == nums[i-1]+1?
递归调用并返回max_consecutive_length_from_index(i-1)+1
返回1
开始
调用oi_input()/oi_test()
获取num和nums
设置递归深度sys.setrecursionlimit(1000000)
遍历计算所有i的最大长度
输出最大值
结束
http://www.dtcms.com/wzjs/122345.html

相关文章:

  • 网上购物网站建设的实训报告chrome手机版
  • 网站浏览构思什么是网络营销平台
  • 网站开发背景介绍seo关键词搜索和优化
  • 网站备案失效百度关键词数据
  • 网站开发文档开封网站优化公司
  • 南京建设网站公司广告海外推广
  • 长沙企业建站在线咨询第三方推广平台
  • 做业务员要认识什么批发网站搜索引擎优化什么意思
  • 做网站都需要什么人团杭州优化外包哪里好
  • 门户网站建设定制互联网营销推广
  • 柳州网站设计aso优化{ }贴吧
  • 成都市住房建设委员会官方网站凡科网站官网
  • 菏泽营销网站建设公司百度快照收录入口
  • PHP做的哪些大型网站运营推广渠道有哪些
  • 线上做网站赚钱代写文章
  • 国内永久免费crm系统软件杭州网站优化搜索
  • 怎么买域名建网站公司怎么在百度上推广
  • 网站专题栏目策划方案郑州seo优化阿亮
  • 微网站可以自己做吗关键词排名软件官网
  • 直销网站建设网络营销知识
  • 公司网页网站建设ppt模板下载app优化网站
  • 企业名称怎么取名seo站长查询
  • 做网站用什么技术打开百度官网
  • 先锋网站大全免费b2b网站如何让百度收录
  • dw网站制作流程近10天的时事新闻
  • 网站建设规范方法十大网站排行榜
  • 佛山新网站建设策划seo优化排名工具
  • ftp网站目录市场营销公司
  • 3 阐述网站建设的步骤过程百度资讯指数
  • 住建部2017建设工程合同范本安卓优化大师hd