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

长兴县住房和城乡建设局网站常州网站制作培训

长兴县住房和城乡建设局网站,常州网站制作培训,网站排名5118,长春网站关键词推广预计3月5日 Wednesday 前完成 【2025年3月1日,记】题目太简单了,3月3日前完成 蓝桥杯速成刷题清单(上) https://www.lanqiao.cn/problems/1216/learning/?problem_list_id30&page1 替换题号1216 目录 进度题解和碎碎念1. 排…

预计3月5日 Wednesday 前完成
【2025年3月1日,记】题目太简单了,3月3日前完成

在这里插入图片描述
蓝桥杯速成刷题清单(上)
https://www.lanqiao.cn/problems/1216/learning/?problem_list_id=30&page=1
替换题号1216
在这里插入图片描述

目录

  • 进度
    • 题解和碎碎念
      • 1. 排序
        • 题面
        • 小结
        • ac代码
      • 2. 走迷宫
        • 题面
        • 小结
        • ac代码
      • 3. 小明的背包1
        • 题面
        • 小结
        • ac代码
      • 4. 蓝桥公园
        • 题面
        • 小结
        • ac代码
      • 5. 回文判定
        • 题面
        • 小结
        • ac代码
        • 题面
        • 小结
        • ac代码
        • 题面
        • 小结
        • ac代码
        • 题面
        • 小结
        • ac代码
        • 题面
        • 小结
        • ac代码

进度

题解和碎碎念

1. 排序

题面

太容易,快排内置的 sorted()

小结
ac代码
import os
import sys# 请在此输入您的代码
N = int(input())
line = sys.stdin.readline().strip()ls = list(map(int, line.split()))
sorted1 = sorted(ls)sorted2 = sorted(ls, key= lambda x:-x)print(" ".join(map(str, sorted1)))
print(" ".join(map(str, sorted2)))

2. 走迷宫

题面

太 ez,就一个 DFS,用内置的 queue

小结

python 内置 queue 用法简介

import queueq = queue.Queue()
q.put((x, y, cnt))  # 放入
(x, y, cnt) = q.get()  # 取出if q.empty():  # 判断是否为空pass

python 内置集合 set() 用法

visited = set()
visited.add((x, y))
if (x, y) in visited:passvisited.discard((x, y))  # 从集合中删除元素,若不存在,不报错
removed = visited.pop()  # 随机删一个,并返回,为空时报错
visited.clear()  # 清空整个集合if len(visited) == 0:print("Visited is empty")
ac代码
import os
import sys
import queue# 请在此输入您的代码
line = sys.stdin.readline().strip()
N, M = map(int, line.split())matrix = []
for _ in range(N):line = sys.stdin.readline().strip()ls = list(map(int, line.split()))matrix.append(ls)line = sys.stdin.readline().strip()
xin, yin, xout, yout = map(int, line.split())xin -= 1
yin -= 1
xout -= 1
yout -= 1moves = [[-1, 0], [0, -1], [1, 0], [0, 1]]q = queue.Queue()
q.put((xin, yin, 0))
visited = set()
success = Falsewhile not q.empty() and not success:# print(queue.popleft())(x, y, cnt) = q.get()# print(f'x= {x}, y= {y}, cnt= {cnt}')for move in moves:x1 = x + move[0]y1 = y + move[1]if x1 < 0 or x1 >= N or y1 < 0 or y1 >= M or matrix[x1][y1] != 1 or (x1, y1) in visited:passelse:if x1 == xout and y1 == yout:print(cnt + 1)success = Truebreakelse:q.put((x1, y1, cnt + 1))visited.add((x1, y1))if not success:print("-1")

3. 小明的背包1

题面

太 ez,最最最基础的 01 背包(当然,我不会啦~

小结

这篇讲的好好(虽然我只学了最基础的 01 背包,难的以后我遇到再学,一定会学的
背包问题详解(01背包,完全背包,多重背包,分组背包)
用二维 dp 记录,核心代码如下

# dp[m][n] 考虑m件物品,在空间不超过n时最大收益
dp = [[0 for _ in range(V + 1)] for _ in range(N + 1)]for j in range(1, V + 1):for i in range(1, N + 1):dp[i][j] = dp[i - 1][j]if item[i - 1][0] <= j:dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - item[i - 1][0]] + item[i - 1][1])

有两个易错点:

  1. 那个 dp 初始化,我最开始不是用的两个 range,后一个是直接 * 。结果就遇到了 python 的 生成多个对同一行列表的引用,而不是独立的列表,这会导致修改其中任何一行时,其他行也会受到影响 debug 好一会…
  2. 忘记了 if 前面那个初始化,wa 了一半测试点…
ac代码
import sysline = sys.stdin.readline().strip()
N, V = map(int, line.split())item = []
for _ in range(N):line = sys.stdin.readline().strip()w, v = map(int, line.split())item.append([w, v])# dp[m][n] 考虑m件物品,在空间不超过n时最大收益
dp = [[0 for _ in range(V + 1)] for _ in range(N + 1)]for j in range(1, V + 1):for i in range(1, N + 1):dp[i][j] = dp[i - 1][j]if item[i - 1][0] <= j:dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - item[i - 1][0]] + item[i - 1][1])print(dp[N][V])

4. 蓝桥公园

题面

ez,Floyd 模板题,骂骂咧咧,什么破题,故意卡 python 是吧

小结

多源最短通路 Floyd 算法——3个循环,通过中心点更新

# i:中间点,j k:起点 终点
# idx2content:记录路径
for i in range(1, N + 1):for j in range(1, N + 1):for k in range(1, N + 1):if dist[j][k] > dist[j][i] + dist[i][k]:dist[j][k] = dist[j][i] + dist[i][k]dist[k][j] = dist[j][k]idx2content[j][k] = iidx2content[k][j] = i

补充 单源最短路径 Dijkstra算法
在这里插入图片描述
讲的很好
补充 最小生成树

# 这个代码不对哈
# 最小不是从 dist_new,应该是 visited 里有的点到外界的最小
idx2content = [float('inf') for _ in range(N + 1)]
while len(visited) != N:dist_new = copy.deepcopy(dist[new])while True:min_value = min(dist_new)min_idx = dist_new.index(min_value)if min_idx not in visited:idx2content[new] = min_idxnew = min_idxvisited.add(min_idx)dist_new[min_idx] = float('inf')

ps. 笑死了,最开始把最小生成树当成 Floyd 交了,还过了一些数据点

ac代码

5. 回文判定

题面

秒了

小结
ac代码
import sysline = sys.stdin.readline().strip()
if line == line[::-1]:print("Y")
else:print("N")

题面
小结
ac代码

题面
小结
ac代码

题面
小结
ac代码

题面
小结
ac代码
http://www.dtcms.com/a/518405.html

相关文章:

  • 嘉兴企业网站模板建站二级域名分发网站源码
  • 网站经营性质网站建设 用什么语言
  • 免费申请网站com域名seo网站优化软件
  • 广西南宁房产网站建设新手做网站的详细步骤
  • 宠物医院网站开发yy直播是个什么样的平台
  • 电子商务网站建设与营运网上注册公司流程图文
  • 网站改版建设 有哪些内容品牌画册设计
  • 外包网站都有哪些网站编辑文章
  • 一起做网店网站哪里进货的无锡网站建设制作设计
  • 怎么把网站放到空间吗任务发布网站建设
  • 营销型网站建设公司地址国外汽车配件网站模板
  • 为网站添加注册功能郑州网站建设熊掌号
  • 公司做网站买服务器多少钱介绍家乡的网页设计代码
  • 东莞建设网站的位置wordpress文章编辑器可视化
  • 品牌网站解决方案网站如何做绿标
  • 信用卡网站模板网站建设联
  • 校园网上超市网站建设战略规划报告怎么写范文大全
  • 龙湖什么网站做宣传网站关键词先后
  • 丰台石家庄网站建设网络用语建设是什么意思
  • 宜春网站建设公司土特产网站的制作
  • jsp网站开发软件广州域名注册
  • 家装设计效果图专业网站杭州p2p网站建设
  • pdf做电子书下载网站淘宝网站建设步骤
  • html5 微网站 免费网站建设研究意义
  • 比较好看的企业网站100种创意活动策划
  • 网站设计公司 国际网址输入入口
  • 北京房产网站大全app 网站开发公司电话
  • 自建虚拟主机网站源码热门的网页设计工具有哪些
  • 注销网站 注销主体网站开发前期准备工作
  • 移动网站在线开发工具松江品划做网站公司