- 博客(1701)
- 资源 (8)
- 收藏
- 关注
原创 P1002 [NOIP 2002 普及组] 过河卒
本文介绍了两种C语言实现方法,用于计算在存在障碍物(马的控制点)的棋盘中,从起点到终点的路径数量。两种方法都采用了动态规划思想,通过坐标平移处理边界问题,并避免数组越界。第一种方法直接初始化数组并手动标记马的控制点,第二种方法则使用memset初始化数组,并通过循环处理马的控制点。两种方法都使用dp数组存储到达每个位置的路径数,最终输出目标位置的路径总数。关键点包括:坐标平移2个单位处理边界,动态规划递推公式dp[i][j] = dp[i-1][j] + dp[i][j-1],以及使用long long类型
2025-08-04 22:45:17
234
原创 力扣 63题, 不同路径 动态规划
本文介绍了力扣第63题"不同路径"的两种动态规划解法。第一种采用二维数组存储中间结果,初始化(m+1)×(n+1)的矩阵,通过递推公式dp[i][j] = dp[i-1][j] + dp[i][j-1]计算路径数,遇到障碍物则置零。第二种优化了空间复杂度,使用一维数组,通过滚动更新方式计算路径数。两种方法都正确处理了起点障碍物情况,时间复杂度O(mn),第二种空间复杂度优化为O(n)。关键点在于处理障碍物和边界条件,确保路径计算的正确性。
2025-08-04 06:16:45
298
原创 python 截屏小助手。
本文介绍了一个Python脚本,用于从指定目录中随机选择一个文件并返回其路径。代码首先检查目录中的文件列表,若无文件则返回None;若存在文件则随机选取一个并返回完整路径。主程序演示了如何调用该函数,并处理空目录的情况。该脚本适用于需要随机访问文件的应用场景,代码简洁实用。
2025-08-03 07:16:20
190
原创 python俄罗斯方块。
摘要:这是一个完整的俄罗斯方块游戏Python实现,使用tkinter库构建图形界面。游戏包含7种经典方块形状和对应颜色,实现了方块生成、移动、旋转和消除等核心功能。程序采用面向对象设计,包含游戏区域绘制、分数显示、下一个方块预览等完整功能,并支持键盘控制。代码结构清晰,注释详细,适合作为学习Python游戏开发的范例。
2025-08-02 14:39:06
241
原创 python 练习,爬图训练。
摘要 该Python脚本实现了一个多线程爬虫程序,用于从新浪游戏LOL数据库下载英雄联盟英雄皮肤图片。主要功能包括:1) 创建保存目录并设置请求头;2) 通过ThreadPoolExecutor实现多线程并发处理;3) 使用BeautifulSoup解析HTML提取英雄名称、皮肤信息;4) 下载图片并保存到本地。程序会自动获取英雄列表,处理每个英雄页面时解析皮肤数据,按照"英雄称号_本名_皮肤名.png"格式命名文件。执行结果显示共处理123个英雄,包含成功下载和失败的案例(如404错误
2025-08-02 02:50:27
144
原创 爬虫,获取lol英雄名单。
这段Python代码通过requests和BeautifulSoup爬取新浪LOL数据库的英雄名单。代码首先设置请求头模拟浏览器访问,获取网页内容后解析HTML结构,定位到包含英雄名称的div元素及其相邻的span标签,提取并保存所有中文英雄名称到列表和文本文件中。最终输出包含雷克顿、亚索等144个英雄的完整名单列表。
2025-08-02 01:16:16
457
原创 优化1-C语言 俄罗斯方块
文章摘要: 这段代码实现了一个俄罗斯方块游戏,使用Raylib库开发。主要功能包括:初始化游戏网格(30x15)、定义13种不同形状和颜色的方块、处理玩家输入(左右移动和旋转)、方块下落逻辑、碰撞检测、消除满行计算得分等。游戏还实现了显示下一个方块、游戏结束判定和中文显示支持(需加载字体文件)。代码采用模块化设计,包含初始化、绘制、游戏逻辑等函数,通过主循环控制游戏流程。目前存在两个已知问题:方块偶尔会超出底部边界,以及中文显示功能尚未完全实现。
2025-08-01 18:27:27
185
原创 C 实现难度过高的俄罗斯方块
这篇文章展示了一个使用Raylib库实现的俄罗斯方块游戏代码框架。代码主要包含以下功能: 定义了游戏的基本数据结构,包括30x20的网格、13种不同类型的方块及其颜色配置 实现了方块旋转、移动、碰撞检测等核心游戏逻辑 包含游戏状态管理(得分、游戏结束判断) 使用Raylib进行图形渲染,绘制网格、当前方块、下一个方块预览等游戏元素 代码结构清晰,包含初始化、游戏循环、输入处理、渲染等模块,为完整实现俄罗斯方块游戏提供了基础框架。游戏支持随机生成方块、键盘控制操作、行消除计分等功能。
2025-08-01 11:13:36
185
原创 表格中代方块,c语言
这篇文章展示了一个使用Raylib库开发的简易俄罗斯方块游戏实现。主要代码功能包括: 定义了游戏网格(20x10)、方块类型(7种)和颜色配置 实现了方块数据结构Block,包含形状、位置等信息 提供了基础游戏功能: 初始化游戏网格 随机生成新方块 方块自动下落机制 网格和方块的图形绘制 使用了Raylib的图形接口进行渲染: 绘制游戏网格线 以不同颜色渲染方块 处理基础游戏循环 代码结构清晰,包含了初始化、渲染和游戏逻辑模块,为完整俄罗斯方块游戏奠定了基础框架。
2025-08-01 05:46:51
219
原创 C语言画表格
本文展示了一个用Raylib库开发的俄罗斯方块游戏基础框架。代码实现了游戏网格绘制功能,包括:1) 定义20x10的游戏网格和7种不同颜色的方块;2) 初始化游戏窗口和网格数据结构;3) 绘制带有网格线的游戏界面,其中每个单元格大小为30像素;4) 提供了方块位置计算和基本操作检测的框架函数。程序使用双缓冲渲染技术,目标帧率为60FPS。这段代码为完整的俄罗斯方块游戏开发奠定了基础框架,后续可在此基础上实现方块移动、旋转、消除等核心游戏逻辑。
2025-08-01 04:39:42
126
原创 HTML5 Canvas 绘制圆弧效果
摘要:本文展示了一个使用HTML5 Canvas绘制圆弧的交互式示例,包含完整的HTML、CSS和JavaScript代码。用户可以通过调整起始角度、结束角度、半径、线宽、颜色和绘制方向等参数,实时查看圆弧效果。代码提供了清晰的界面布局和响应式控制,方便开发者理解Canvas的arc()方法应用。
2025-07-26 17:19:11
797
原创 pygame.sprite.groupcollide 介绍
pygame.sprite.groupcollide()是Pygame中检测两个精灵组碰撞的重要函数,返回碰撞精灵的字典。它接受两个精灵组参数和dokill布尔值控制碰撞后是否删除精灵,支持自定义碰撞检测函数。典型应用包括射击游戏中的子弹与敌人碰撞检测,可通过collided参数实现圆形等非矩形碰撞判定。需要注意性能影响和精灵多组归属问题,适合需要批量碰撞检测的游戏场景。
2025-07-24 15:29:49
302
原创 在tekla软件上进行二次开发,显示这样一种效果
该代码展示了一个基于Tekla Structures API的Windows窗体应用,包含两种钢梁建模功能:1) 按指定数量和间距创建平行梁,2) 在圆周上均匀分布点并创建所有点间的连接梁。两种功能都使用HN4002008*13型钢和Q235B材料,通过Tekla模型连接验证后执行建模操作。第一个功能根据输入参数生成线性排列梁,第二个功能则计算12个圆周点坐标并创建两两连接的辐射状梁网。每次操作后都会提交模型变更并显示成功提示。
2025-07-23 23:46:03
170
原创 使用C#二次开发tekla一次性画出10条钢。
该C#程序演示了如何使用Tekla Structures API进行钢结构建模。程序包含一个TeklaHelper类,提供三个主要功能:1) 创建单个梁构件;2) 批量创建多个梁;3) 在图形界面显示文本消息。创建梁时设置了材料、截面尺寸、预制类型等参数,并支持批量生成不同位置的梁。程序通过控制台输出操作状态,使用绿色文本显示执行结果,最后等待用户输入后结束。该代码展示了Tekla API的基本使用方法,包括模型连接、几何点定义、构件属性设置等核心功能。
2025-07-22 16:36:05
264
原创 为什么要用浅拷贝
这段代码中,bullets.copy()创建原列表的浅拷贝,避免直接遍历时修改列表导致的RuntimeError错误。通过遍历拷贝,可以安全地在循环内删除原列表元素。替代方案包括列表推导式或倒序遍历,但.copy()是最简单直观的解决方案,特别适合游戏开发中动态增删对象的场景。
2025-07-22 02:31:45
220
原创 最少标记点问题:贪心算法解析
本文介绍了直线上最少标记点问题的贪心算法解决方案。给定n个点及其位置,要求在覆盖半径R内至少有一个标记点的情况下,使标记点数量最少。算法通过排序、贪心覆盖和边界标记三个步骤实现:首先排序所有点,然后从左到右依次确定每个标记点的覆盖范围,并在边界放置标记点。文章通过具体示例演示了算法执行过程,分析了O(N log N)的时间复杂度,并指出该算法可应用于基站部署、监控布置等实际问题,能在满足覆盖要求的同时最小化资源使用。
2025-07-19 14:03:47
395
原创 有n棍棍子,棍子i的长度为ai,想要从中选出3根棍子组成周长尽可能长的三角形。请输出最大的周长,若无法组成三角形则输出0。
有n棍棍子,棍子i的长度为ai,想要从中选出3根棍子组成周长尽可能长的三角形。请输出最大的周长,若无法组成三角形则输出0。
2025-07-17 21:53:31
1044
原创 如何进行选择。
这篇文章介绍了如何使用动态规划解决“House Robber”问题。该问题要求在不能连续抢劫相邻房屋的情况下,最大化抢劫金额。动态规划通过定义dp[i]表示前i+1个房屋的最大金额,利用递推关系dp[i] = max(dp[i-2] + nums[i], dp[i-1])逐步求解。初始条件处理了0-2个房屋的情况,最终返回最后一个dp值。该方法的时间复杂度为O(n),空间复杂度可优化至O(1)。文章通过示例清晰展示了算法的执行过程,并解释了动态规划在此问题中的适用性。
2025-07-16 21:11:47
657
1
原创 这段代码实现了一个经典的二分查找算法,用于解决“将数组分成M个连续子数组,使得这些子数组的和的最大值最小“的问题
本文介绍了一个二分查找算法,用于解决将数组分成M个连续子数组并使最大子数组和最小化的问题。算法通过确定解的范围(数组最大值到数组总和),使用check函数验证中间值是否满足分割条件(子数组数≤M且每个子数组和≤x)。通过二分查找逐步缩小范围,最终找到最优解。示例分析表明,对于输入[4,2,4,5,1]分成3部分,最优解为6。该算法时间复杂度为O(N log(sum-maxN)),高效解决了这类最大值最小化问题。
2025-07-13 12:18:26
447
原创 python gui tk设计一个顶级窗体,用来设置root窗体控件的颜色。
python gui tk设计一个顶级窗体,用来设置root窗体控件的颜色。
2025-06-27 10:23:44
103
原创 python gui tkinter 当控件内容发生改变,要触发事件的处理。
python gui tkinter 当控件内容发生改变,要触发事件的处理。
2025-06-24 11:21:36
109
原创 abcdefg依次入栈S,出栈效果是bdcfeag, 则S的容量至少是多少
abcdefg依次入栈S,出栈效果是bdcfeag, 则S的容量至少是多少
2025-06-17 08:42:38
678
原创 基于Python的TCP应用案例,包含**服务器端**和**客户端**的完整代码
基于Python的TCP应用案例,包含**服务器端**和**客户端**的完整代码
2025-06-14 18:13:43
454
原创 win操作系统安装C++语言开发环境之一, vscode +MinGW ,流程
win操作系统安装C++语言开发环境之一, vscode +MinGW ,流程。
2025-06-09 15:56:10
903
原创 链式存储结构的训练
本文介绍了一个C语言实现的链表操作程序,主要功能包括链表的初始化、节点添加、链表内容打印、内存释放以及核心功能——将链表中偶数位置的节点移动到链表末尾。程序首先定义了一个带头节点和尾指针的链表结构,并实现了链表的初始化、节点添加和打印功能。核心功能changeList通过遍历链表,将偶数位置的节点移动到链表末尾,并更新尾指针。最后,程序通过main函数测试了这些功能,包括链表的创建、节点添加、链表内容打印、核心功能调用以及内存释放。该程序展示了链表的基本操作和如何通过遍历和指针操作实现链表的特定功能。
2025-05-20 15:38:15
127
原创 一台入网的电脑有6要素, 机器名,mac,ip,俺码,网关,dns,分别有什么作用
一台入网的电脑有6要素, 机器名,mac,ip,俺码,网关,dns,分别有什么作用
2025-05-16 10:52:37
1397
原创 python 建立一个新的项目 银行存款取款管理系统
该项目实现了一个简单的用户管理系统,包含注册、登录、存款和取款功能。用户类 User 包含用户名、密码和当前存款值等属性,并提供了存款、取款和查看余额的方法。系统通过 pymysql 连接网络数据库,支持用户注册、登录、存款和取款操作。注册时检查用户名是否已存在,登录时验证用户名和密码。登录成功后,用户可以进行存款、取款和查看余额操作。系统通过循环菜单与用户交互,确保操作的连续性和便捷性。
2025-05-15 10:22:32
215
/* 1)入队功能 增加的人数,以及人员的信息来自于键盘输入 . 2)出队检测 可以-次安排10人混检,也可以安排单检 出队
2023-01-03
//用到了time函数,获取系统时间值,做为随机种子 //用到了srand 设置随机种子 //用到了rand函数,用来产生随机
2023-01-03
SetWindowToRegion.zip
2021-07-31
算法题,之一,如图所示。
2024-10-21
TA创建的收藏夹 TA关注的收藏夹
TA关注的人