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

蓝桥杯第22天(Python)(疯狂刷题第5天)

题型:

1.思维题/杂题:数学公式,分析题意,找规律

2.BFS/DFS:广搜(递归实现),深搜(deque实现)

3.简单数论:模,素数(只需要判断到 int(sqrt(n))+1),gcd,lcm,快速幂(位运算移位操作),大数分解(分解为质数的乘积)

4.简单图论:最短路(一对多(Dijstra,临接表,矩阵实现),多对多(Floyd,矩阵实现)),最小生成树(并查集实现)

5.简单字符串处理:最好转为列表操作

6.DP:线性DP,最长公共子序列,0/1背包问题,最长连续字符串,最大递增子串

7.基本算法:二分,贪心,组合,排列,前缀和,差分

8.基本数据结构:队列,集合,字典,字符串,列表,栈,树

9.常用模块:math,datetime,sys中的设置最大递归深度(sys.setrecursionlimit(3000000)),collections.deque(队列),itertools.combinations(list,n)(组合),itertools.permutations(list,n)(排列)  heapq(小顶堆)

目录

1.裁纸刀(思维)

2.寻找整数

3.《质因数个数》真题练习(大数分解)

 4.《矩形拼接》真题练习(枚举遍历)

5.《消除游戏》(暴力循环)​编辑

6.重新排序(差分数组,贪心)

7.《全排列的价值》真题练习(数学定理,思维)

 8. 《最长不下降子序列》真题练习(DP)

 9.《最优清零方案》真题练习(暴力,线段树)

 10.《数的拆分》真题练习


1.裁纸刀(思维)

 裁的次数是一定的!找规律打印输出即可。

2.寻找整数

import sys  #设置递归深度
import collections  #队列
import itertools  # 排列组合
import heapq  #小顶堆
import math
sys.setrecursionlimit(300000)
import functools   # 自定义比较函数  -1不变,1交换def lcm(x,y):return x//math.gcd(x,y)*yx=3
step=1b=[0,0,1,2,1,4,5,4,1,2,9,0,5,10,11,14,9,0,11,18,9,11,11,15,17,9,23,20,25,16,29,27,25,11,17,4,29,22,37,23,9,1,11,11,33,29,15,5,41,46]'''
3 5 7 8 9 11 13 15 17 19 21 23 25 27      2递增
5 8 11 14 17 20 23 26 29 32     3递增筛选    5 11 17 23  
5 9 13 17 21 25 29 33     4递增    5 17 29'''for i in range(2,50):  # 类似埃式筛法while x %i !=b[i]:   x+=stepstep=lcm(step,i)  # 更新步长
print(x)

 暴力遍历或者找规律,根据前面几个找规律

3.《质因数个数》真题练习(大数分解)

标程:
 

n = int(input())
ans = 0
#从2开始进行质因子分解
i = 2
while i * i <= n:if n % i == 0:ans += 1while n % i == 0:n //= ii += 1
if n != 1:ans += 1
print(ans)
from random import randint
from math import gcddef witness(a, n):u = n - 1t = 0while u % 2 == 0:u = u // 2t += 1x1 = pow(a, u, n)for i in range(1, t + 1):x2 = x1 * x1 % nif x2 == 1 and x1 != 1 and x1 != n - 1:return Truex1 = x2if x1 != 1:return Truereturn False#miller_rabin素性测试 对数字n进行s次测试
def miller_rabin(n, s = 5):if n < 2:return Falseif n == 2:return Trueif n % 2 == 0:return Falsefor i in range(s):a = randint(1, n - 1)if witness(a, n):return Falsereturn True#返回一个因子,不一定是素因子
def pollard_rho(n):i, k = 1, 2c = randint(1, n - 1)x = randint(0, n - 1)y = xwhile True:i += 1x = (x * x + c) % nd = gcd(abs(x - y), n)if d != 1 and d != n:return dif y == x:return nif i == k:y = xk = k * 2factor = []
#找所有的素因子
def findfac(n):if miller_rabin(n):factor.append(n)returnp = nwhile p >= n:p = pollard_rho(p)findfac(p)findfac(n // p)n = int(input())
findfac(n)
print(len(set(factor)))

 4.《矩形拼接》真题练习(枚举遍历)

 

 依次考虑4条边,6条边,8条边对应的情况,枚举遍历

标程:

T = int(input())
while T != 0:T -= 1a = list(map(int, input().split()))a = [[a[0],a[1]], [a[2],a[3]], [a[4],a[5]]]ans = 8#枚举第一个矩形下标为i,第二个矩形下标为j,第三个矩形下标为kfor i in range(3):for j in range(3):for k in range(3):if i == j or i == k or j == k:continue#枚举三个矩形的两条边for ii in range(2):for jj in range(2):for kk in range(2):if a[i][ii] == a[j][jj]:ans = min(ans, 6)if a[i][ii] == a[k][kk]:ans = min(ans, 4)if a[i][ii] == a[j][jj] + a[k][kk]:ans = min(ans, 6)if a[j][1 - jj] == a[k][1 - kk]:ans = min(ans, 4)print(ans)

5.《消除游戏》(暴力循环)

暴力循环 ,扫一轮,看哪些是边缘字符,记录下标,完成扫描后删除,完成后继续循环遍历,退出条件:当前字符为空或者循环一次后长度不变。

标程:

s = list(input())
last_length = 0while True:length = len(s)#如果长度等于0,终止if length == 0:print("EMPTY")break#如果长度未发生变化,终止if length == last_length:print("".join(s))breakvis = [0] * length#根据题意找出边缘字符for i in range(length):if (i - 1) >= 0 and (i + 1) < length and s[i] == s[i - 1] and s[i] != s[i + 1]:vis[i] = vis[i + 1] = 1if (i - 1) >= 0 and (i + 1) < length and s[i] != s[i - 1] and s[i] == s[i + 1]:vis[i] = vis[i - 1] = 1#将边缘字符去除tmp_s = []for i in range(length):if vis[i] == 0:tmp_s.append(s[i])s = tmp_slast_length = length

6.重新排序(差分数组,贪心)

 初步想法:将重新查询的区间进行记录,看是否有交集,将交集区间替换为最大值

差分数组

 正解:读取区间,标记区间访问次数(通过差分数组实现),然后根据贪心思想,将大的值放到访问次数最多的位置。

标程:

import sys  #设置递归深度
import collections  #队列
import itertools  # 排列组合
import heapq  #小顶堆
import math
sys.setrecursionlimit(300000)
import functools   # 自定义比较函数  -1不变,1交换# 总体思路:查询最多的那一个放最大值,不需要序号,只需要记录最大次数
n = int(input())
a = list(map(int,input().split()))
a=[0]+a
b=[0]*(n+10)
s=[0]*(n+1)m=int(input())
for i in range(m):# 差分数组实现区间加法更新l,r = map(int,input().split())b[l]+=1b[r+1]-=1#对差分数组前缀和,得到每个数字的查询次数
for i in range(1,n+1):s[i]=s[i-1]+b[i]# sum1为原始和,sum2为贪心后的最大值
sum1,sum2=0,0
for i in range(1,n+1):sum1+=a[i]*s[i]# 贪心思想,大对大,小对小
a.sort()
s.sort()# 计算重新排序后的
for i in range(1,n+1):sum2+=a[i]*s[i]
print(sum2-sum1)

7.《全排列的价值》真题练习(数学定理,思维)

初步想法:找规律?没得规律就把全排列列出来,循环暴力,能拿多少分那多少分。

 找规律,蒙对20%数据

import sys  #设置递归深度
import collections  #队列
import itertools  # 排列组合
import heapq  #小顶堆
import math
sys.setrecursionlimit(300000)
import functools   # 自定义比较函数  -1不变,1交换#4 0+1*3+2*3+3*3+4*3+5*3+6
#3 0+1+1+2+2+3
#2 0+1ans=0
n = int(input())
for i in range(1,n*(n-1)//2):ans+=(n-1)*i%998244353
print((ans+n*(n-1)//2)%998244353)

 正解:顺序数和逆序数总和为 n*(n-1)//2   ,顺序数和逆序数想等,n个数公有n!个全排列,即顺序和逆序之和为n!*n*(n-1)//2,所以价值之和为上式除以2。

标程:

mod = 998244353
n = int(input())
ans = n * (n - 1) // 2 % mod
for i in range(3, n + 1):ans = ans * i % mod
print(ans)

 8. 《最长不下降子序列》真题练习(DP)

初步想法:通过DP算法,即最长递增子序列模板来做,记录最长子序列的下标,通过DP数组来找遍历,从后往前,看是否有元素小于最长子序列同时区间大于K的,有的话直接+k?

应该有问题,这种思路有问题!!不能过全部数据,考虑不全。

正解:思路类似,通过DP最长递增模板,但是需要用线段树模板维护,这题不要全分,跳了。

 9.《最优清零方案》真题练习(暴力,线段树)

 初步想法:先选择操作2,在操作1,暴力循环就可以了

 正解:思路相同,但是我的想法不能过全部数据,需要用线段树来处理,线段树没学。

maxn = 1000000 + 10
tree_mi = [0] * (maxn * 4)
tree_add = [0] * (maxn * 4)n, k = list(map(int, input().split()))
a = list(map(int, input().split()))
a = [0, *a]#线段树模板
#利用左右儿子信息更新节点o
def push_up(o):tree_mi[o] = min(tree_mi[o << 1], tree_mi[o << 1 | 1])#利用节点o的lazy标记add更新左右儿子
def push_down(o):if tree_add[o] != 0:tree_add[o << 1] += tree_add[o]tree_mi[o << 1] += tree_add[o]tree_add[o << 1 | 1] += tree_add[o]tree_mi[o << 1 | 1] += tree_add[o]tree_add[o] = 0#建树
def build(o, l, r):tree_add[o] = 0if l == r:tree_mi[o] = a[l]returnmid = (l + r) >> 1build(o << 1, l, mid)build(o << 1 | 1, mid + 1, r)push_up(o)#查询区间[L,R]的最小值
def query(o, l, r, L, R):if L <= l and r <= R:return tree_mi[o]push_down(o);mid = (l + r) >> 1ans = 1000000000;if L <= mid:ans = min(ans, query(o << 1, l, mid, L, R))if R > mid:ans = min(ans, query(o << 1 | 1, mid + 1, r, L, R))return ans#区间更新[L,R]统一加上val
def update(o, l, r, L, R, val):if L <= l and r <= R:tree_mi[o] += valtree_add[o] += valreturnpush_down(o);mid = (l + r) >> 1if L <= mid:update(o << 1, l, mid, L, R, val)if R > mid:update(o << 1 | 1, mid + 1, r, L, R, val)push_up(o);build(1, 1, n)
ans = 0
for i in range(1, n - k + 2):#查询区间[i, i+k-1]的最小值mi = query(1, 1, n, i, i + k - 1)if mi == 0:                     #无法进行区间消除#res表示当前的a[i]res = query(1, 1, n, i, i)#把当前的a[i]置为0update(1, 1, n, i, i, -res)ans += reselse:ans += mi#区间消除update(1, 1, n, i, i + k - 1, -mi)#res表示当前的a[i]res = query(1, 1, n, i, i)#把当前的a[i]置为0update(1, 1, n, i, i, -res)ans += res
for i in range(n - k + 2, n + 1):ans += query(1, 1, n, i, i)
print(ans)

 10.《数的拆分》真题练习

 

 初步想法:大数分解应该能做,看是否能分解为两个质数或者一个质数,能就输出yes,不能就输出no

import os
import sys
import math# 请在此输入您的代码
t= int(input())
def check(n):count=[]  # 记录有多少个素数cur=0  # 指向列表,方便记录幂次for i in range(2,int(math.sqrt(n))+1):if n%i==0:count.append(0)if len(count)>2:print("no")returnwhile n%i==0:n=n//icount[cur]+=1cur+=1  #记录下一个质数幂次if n>1:count.append(1)if len(count)>2:print("no")return#print(count)if len(count)==1 and count[0]>=2:print('yes')returnif  len(count)==2 and count[0]>=2 and count[1]>=2:print('yes')returnprint('no')for i in range(t):a=int(input())check(a)

正解:题目意思好像弄错了,本题求的是只要分解的质数的幂次大于2就行。(标准做法要用到埃氏筛得到4000内的所有素数,对每一个数遍历,首先判断平方和立方,然后再枚举4000以内的素数因子,如果有幂次等于1的,直接跳出循环打印no)

import os
import sys
import math# 请在此输入您的代码
t= int(input())
def check(n):count=0  # 记录幂次for i in range(2,int(math.sqrt(n))+1):if n%i==0:while n%i==0:n=n//icount+=1if(count<2):print('no')returncount=0   # 复位,记数下一个质数if n>1:  # 剩下一个质数,幂次肯定为1,不满足print("no")returnprint('yes')for i in range(t):a=int(input())check(a)

标程:

import os
import sys
import mathnot_prime = [0]*4010
prime = []
# 预处理400以内的素数
for i in range(2,4001):if not_prime[i]==0:prime.append(i)for j in range(2*i,4001,i):  #埃式筛not_prime[j]=1# 判断平方数
def square_number(x):y=int(x**0.5)return y*y==x or (y+1)*(y+1)==x   #防止精度出问题# 判断立方数
def cubic_number(x):y=int(x**(1/3))return y**3==x or (y+1)**3 ==x
t = int(input())
for i in range(t):a=int(input())# 判断平方和立方if square_number(a) or cubic_number(a):print('yes')continue# 枚举4000以内因子falg=Truefor i in prime:if a%i==0:mi=0while a%i==0:a=a//imi+=1if mi==1:falg=Falsebreakif falg:print('yes')else:print('no')

相关文章:

蓝桥杯第22天(Python)(疯狂刷题第5天)

题型&#xff1a; 1.思维题/杂题&#xff1a;数学公式&#xff0c;分析题意&#xff0c;找规律 2.BFS/DFS&#xff1a;广搜&#xff08;递归实现&#xff09;&#xff0c;深搜&#xff08;deque实现&#xff09; 3.简单数论&#xff1a;模&#xff0c;素数&#xff08;只需要…...

软件测试面试常问的问题有哪些?

互联发展是很快的&#xff0c;每年都会有新语言的诞生。 我干测试已经三年了&#xff0c;主要负责web功能测试&#xff0c;java编写接口自动化&#xff0c;APP功能测试&#xff0c;APP 接口自动化&#xff08;也是用的java&#xff09;&#xff0c;面过得测试也差不多30个&…...

js之文件信息读取篇高级基础

文章目录js之文件信息读取&#xff08;FileReader&#xff09;获取文件相关信息的两种方式js原生拖拽事件js之文件信息读取&#xff08;FileReader&#xff09; 首先这里面会讲一些知识点 bolb 对象FileReader对象 let blob new Blob([heewwekgewgwer], { type: text/plain …...

SQL Server的死锁说明

死锁指南一、了解死锁二、检测并结束死锁2.1、可能死锁的资源三、处理死锁四、最大限度地减少死锁4.1、以相同的顺序访问对象4.2、避免事务中的用户交互4.3、保持交易简短且在一个批次中4.4、使用较低的隔离级别4.5、使用基于行版本控制的隔离级别4.6、使用绑定连接4.7、停止事…...

关于#define的一些小知识

目录 一&#xff0c;#define的声明格式&#xff1a; 二&#xff0c;#define宏的作用是为了完成替换 #define的替换规则&#xff1a; 三&#xff0c;#define使用时常犯的错误 四&#xff0c;宏与函数的比较 4.1&#xff0c;什么时候使用宏&#xff1f; 4.1&#xff0c;…...

rabbitmq普通集群与镜像集群搭建

1.准备三台centos7主机&#xff0c;并关闭防火墙与selinux 2.安装rabbitmq环境必备的Erlang(以下所有操作三台主机均需要执行) 执行以下命令下载配置erlang yum源 curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash使用yum命…...

session和jwt哪个更好

session和jwtsession优点缺点jwt优点缺点总结session 优点 原理简单&#xff0c;易于学习。用户信息存储在服务端&#xff0c;可以快速封禁某个用户。 缺点 占用服务端内存&#xff0c;硬件成本高。多进程&#xff0c;多服务器时&#xff0c;不好同步-需要使用第三方缓存&a…...

基于TPU-MLIR实现UNet模型部署-决赛答辩02

队伍&#xff1a;AP0200023 目录 初赛 一、 模型导出优化 1.1 直接倒出原始模型并转换 1.2 导出模型前处理 1.2.1 导出Resize 1.2.2 导出归一化 1.3导出模型后处理 1.3.1导出 Resize 与 1.3.2导出 ArgMaxout 1.3.3导出特征转RGB 复赛 一、 确定baseline 二、优化模…...

Maven高级-分模块开发依赖管理

Maven高级-分模块开发&依赖管理1&#xff0c;分模块开发1.1 分模块开发设计1.2 分模块开发实现1.2.1 环境准备1.2.2 抽取domain层步骤1:创建新模块步骤2:项目中创建domain包步骤3:删除原项目中的domain包步骤4:建立依赖关系步骤5:编译maven_02_ssm项目步骤6:将项目安装本地…...

《安富莱嵌入式周报》第308期:开源带软硬件安全认证的PLC设计,开源功率计,可靠PID实现,PR2机器人设计文件全开源,智能手表设计WASP-OS

周报汇总地址&#xff1a;嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频版&#xff1a; https://www.bilibili.com/video/BV1F24y157QE 《安富莱嵌入式周报》第308期&#xff1a;开源带软…...

代码随想录算法训练营第五十六天 | 583. 两个字符串的删除操作、72. 编辑距离、编辑距离总结

583. 两个字符串的删除操作 动规五部曲 1、确定dp数组&#xff08;dp table&#xff09;以及下标的含义 dp[i][j]&#xff1a;以i-1为结尾的字符串word1&#xff0c;和以j-1位结尾的字符串word2&#xff0c;想要达到相等&#xff0c;所需要删除元素的最少次数。 2、确定递推…...

Sip协议

简介 SIP&#xff08;Session Initiation Protocol&#xff0c;会话初始协议&#xff09;是一个用于建立、更改和终止多媒体会话的应用 层控制协议&#xff0c;其中的会话可以是 IP 电话、多媒体会话或多媒体会议。SIP 是 IETF 多媒体数据和控 制体系结构的核心协议&#xff0…...

RandomAccessFile类 断点续传

文章目录学习链接RandomAccessFile构造方法实现的接口DataOutputDataInputAutoCloseable重要的方法多线程读写同一个文件&#xff08;多线程复制文件&#xff09;代码1代码2断点续传FileUtils学习链接 RandomAccessFile详解 Java IO——RandomAccessFile类详解 java多线程-断点…...

SpringCloud微服务技术栈的注册中心Eureka

文章目录SpringCloud微服务技术栈的注册中心Eureka简介Eureka特点操作步骤环境准备创建Eureka Server注册服务提供方调用服务消费方总结SpringCloud微服务技术栈的注册中心Eureka 简介 在微服务架构中&#xff0c;服务的数量庞大&#xff0c;而且每个服务可能会有多个实例。此…...

Unity最新热更新框架 hybridclr_addressable

GitHub:YMoonRiver/hybridclr_addressable: 开箱即用的商业游戏框架&#xff0c;集成了主流的开发工具。将主流的GameFramework修改&#xff0c;支持Addressable和AssetBundle&#xff0c;已完善打包工具和流程。 (github.com) # 新增GameFramework Addressables 开箱即用 # 新…...

【c语言】一维数组***特性、存储原理

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; 给大家跳段街舞感谢支持&#xff01;ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ…...

[oeasy]python0133_[趣味拓展]好玩的unicode字符_另类字符_上下颠倒英文字符

另类字符 回忆上次内容 上次再次输出了大红心♥ 找到了红心对应的编码黑红梅方都对应有编码 原来的编码叫做 ascii️ \u这种新的编码方式叫unicode包括了 中日韩字符集等 各书写系统的字符集 除了这些常规字符之外 还有什么好玩的东西呢&#xff1f; 颠倒字符 这个网站可以…...

找凶手,定名次,字符串旋转,杨氏矩阵

1.找凶手问题&#xff1a; //题目名称&#xff1a; //猜凶手 //题目内容&#xff1a; //日本某地发生了一件谋杀案&#xff0c;警察通过排查确定凶手必为4个嫌疑犯的一个。 //以下为4个嫌疑犯的供词&#xff1a; //A说&#xff1a;不是我 //B说&#xff1a;是C //C说&#xff…...

Python 进阶指南(编程轻松进阶):十四、实践项目

原文&#xff1a;http://inventwithpython.com/beyond/chapter14.html 到目前为止&#xff0c;这本书已经教会了你编写可读的 Python 风格代码的技巧。让我们通过查看两个命令行游戏的源代码来实践这些技术&#xff1a;汉诺塔和四人一排。 这些项目很短&#xff0c;并且基于文…...

Redis的五种数据类型及应用场景

Redis是一个开源的key-value数据库。 五种数据类型 String&#xff0c;List&#xff0c; Set&#xff0c;SortedSet&#xff0c;Hash List类型可以存储多个String。 Set类型可以存储不同的String。 SortedSet可以存储String的排序。 Hash可以存储多个key-value对。 String …...

c++List的详细介绍

cList详细使用 write in front 作者&#xff1a; 不进大厂不改名 专栏&#xff1a; c 作者简介&#xff1a;大一学生 希望能向其他大佬和同学学习&#xff01; 本篇博客简介&#xff1a;本文主要讲述了一种新容器list的使用方法&#xff0c;相信你在学了后&#xff0c;能够加深…...

Heap堆的升序排序

在heap堆中&#xff0c;大根堆是一种特殊的堆&#xff0c;它满足下列性质&#xff1a;对于任意一个非叶子节点i&#xff0c;其左右子节点的值均小于等于它本身的值。 在大根堆中&#xff0c;堆顶元素永远是值最大的元素&#xff0c;所以将堆顶元素不断取出来&#xff0c;就相当…...

小程序开发收费价目表

小程序作为一种新兴应用形式&#xff0c;正在逐渐成为企业和个人推广、运营的重要手段。然而&#xff0c;小程序开发的价格因项目规模和复杂程度差异较大&#xff0c;令不少人望而却步。本文将从小程序开发的相关因素入手&#xff0c;探讨小程序开发的价格范围和算法。 一、小…...

Dubbo服务暴露步骤详解

文章目录Dubbo服务暴露步骤详解背景介绍理论知识讲解什么是服务暴露&#xff1f;Dubbo 服务暴露的基本原理操作步骤具体实现环境准备实现服务接口实现服务提供者配置 Dubbo 服务提供者启动服务提供者实现服务消费者配置 Dubbo 服务消费者测试总结Dubbo服务暴露步骤详解 背景介…...

第十四届蓝桥杯编程题部分代码题解

C. 冶炼金属 最大值就是取 a/ba / ba/b 的最小值&#xff0c;最小值就是二分找到满足 mid∗(bi1)≥aimid * (b_i 1) ≥ a_imid∗(bi​1)≥ai​ 的最小值 #include<bits/stdc.h> #define int long long #define x first #define y second using namespace std;void sol…...

统一结果封装异常处理

统一结果封装&异常处理2&#xff0c;统一结果封装2.1 表现层与前端数据传输协议定义2.2 表现层与前端数据传输协议实现2.2.1 环境准备2.2.2 结果封装步骤1:创建Result类步骤2:定义返回码Code类步骤3:修改Controller类的返回值步骤4:启动服务测试3&#xff0c;统一异常处理3…...

数字藏品平台的发展趋势是什么?

1、数字藏品平台具体内容生产模式将在PGC&#xff08;专业生产制造具体内容&#xff09;方式向PUGC&#xff08;技术专业用户生产内容&#xff09;方式变化。 目前&#xff0c;中国热门的数字藏品平台都在PGC模式中持续发展的&#xff0c;而国外流行NFT平台则比较多选用UGC&am…...

Vue3对话框(Dialog)

Vue2对话框&#xff08;Dialog&#xff09; 可自定义设置以下属性&#xff1a; 标题&#xff08;title&#xff09;&#xff0c;类型&#xff1a;string | slot&#xff0c;默认 提示 内容&#xff08;content&#xff09;&#xff0c;类型&#xff1a;string | slot&#xf…...

【深度强化学习】(5) DDPG 模型解析,附Pytorch完整代码

大家好&#xff0c;今天和各位分享一下深度确定性策略梯度算法 (Deterministic Policy Gradient&#xff0c;DDPG)。并基于 OpenAI 的 gym 环境完成一个小游戏。完整代码在我的 GitHub 中获得&#xff1a; https://github.com/LiSir-HIT/Reinforcement-Learning/tree/main/Mod…...

unity,Color.Lerp函数

介绍 Color.Lerp函数是Unity引擎中的一个静态函数&#xff0c;用于在两个颜色值之间进行线性插值&#xff0c;从而实现颜色渐变效果 方法 Color.Lerp函数是Unity引擎中的一个静态函数&#xff0c;用于在两个颜色值之间进行线性插值&#xff0c;从而实现颜色渐变效果。该函数的…...