第15届蓝桥杯省赛python组A,B,C集合
过几天就省赛了,一直以来用的是C++,Python蓝桥杯也是刚刚开始准备(虽然深度学习用的都是python,但是两者基本没有任何关系),这两天在做去年题时犯了很多低级错误,因此记录一下以便自己复查
PS:很多问题的实现其实都是基于C++换成python的,因此很多代码显得比较丑,还请见谅。
为了结构清晰,我从Python易错点和2024年题目这两部分进行展开:
2024真题(大部分写了,但有一小部分没有做):
1.树状数组+思维:6000. 植物生命力 - AcWing题库
思路:
我们反过去考虑,一个点的贡献不就是当前链上的比他大的又不是它的倍数的点的个数吗?这个链怎么保证呢?DFS递归序列不就是一条链吗,因此这点可以通过DFS实现,那怎么查到比他大的数又不是整除的呢?不妨先考虑比他大的,我们在DFS过程中维护树状数组即可,我们再通过枚举它的倍数对整除的进行排除即可。
代码实现:
import sysfrom types import GeneratorType
def bootstrap(f, stack=[]):def wrappedfunc(*args, **kwargs):if stack:return f(*args, **kwargs)else:to = f(*args, **kwargs)while True:if type(to) is GeneratorType:stack.append(to)to = next(to)else:stack.pop()if not stack:breakto = stack[-1].send(to)return toreturn wrappedfuncn,s=map(int,input().split())
a=list(map(int,input().split()))
a=[0]+a
edge=[[] for i in range(n+10)]
tr=[0 for i in range(200010)]
vis=[0 for i in range(200010)]
ans=0
def lowbit(x):return x&-xdef add(pos,v):while pos<=n:tr[pos]+=vpos=pos+lowbit(pos)def get(pos):res=0while pos>0:res+=tr[pos]pos-=lowbit(pos)return res@bootstrap
def dfs(root,fa):global ansglobal nres=get(n)-get(a[root])for i in range(2*a[root],n+1,a[root]):if vis[i]==1:res-=1ans+=resvis[a[root]]=1add(a[root],1)for i in edge[root]:if i==fa:continueyield dfs(i,root)vis[a[root]]=0add(a[root],-1)yield Nonefor _ in range(n-1):u,v=map(int,input().split())edge[u].append(v)edge[v].append(u)dfs(s,-1)
print(ans)
2.trie树链路减法:5999. 最大异或结点 - AcWing题库
思路:如果不管那个不能异或相连的点的话就是一个很板的字典树问题,现在我们的问题就是如何解决这个相连点不能异或的限制。
比较直观的想法就是把那个节点相邻的点从字典树中删除,然后正常操作,最后再恢复,那么如何实现呢?比较巧妙地,我们再新开一个数组来记下树上每个点的出现次数,删除的话就是依次从树链中走下来,走到的节点位置次数-1即可。
代码实现:
import sys
from types import GeneratorType
def bootstrap(f, stack=[]):def wrappedfunc(*args, **kwargs):if stack:return f(*args, **kwargs)else:to = f(*args, **kwargs)while True:if type(to) is GeneratorType:stack.append(to)to = next(to)else:stack.pop()if not stack:breakto = stack[-1].send(to)return toreturn wrappedfunc
ans = 0
ind = 1
n = int(input())
N = 32 * n + 10
w = list(map(int, input().split()))
fa = list(map(int, input().split()))
tr = [[0 for i in range(2)] for i in range(N)]
id = [-1 for i in range(N)]
cnt = [0] * (N + 10)
mp = {}for i in range(n):if fa[i] == -1:continuemp[i] = []mp[i].append(fa[i])mp[fa[i]] = []mp[fa[i]].append(i)def insert(x):global indww = w[x]root = 0for i in range(30, -1, -1):j = ww >> i & 1if tr[root][j] == 0:tr[root][j] = indind += 1root = tr[root][j]cnt[root] += 1id[root] = xdef remove(x):root = 0for i in range(30, -1, -1):j = x >> i & 1cnt[tr[root][j]] -= 1root = tr[root][j]@bootstrap
def query(x, root, len):global ansif len == -1:ans = max(ans, w[x] ^ w[id[root]])yield Nonei = w[x] >> len & 1if cnt[tr[root][1 - i]] > 0:yield query(x, tr[root][1 - i], len - 1)else:yield query(x, tr[root][i], len - 1)yield Nonefor i in range(n):insert(i)
for i in range(n):for k in mp[i]:remove(w[k])query(i, 0, 30)for k in mp[i]:insert(k)print(ans)
3.递推+简单博弈:6001. 砍柴 - AcWing题库
思路:很显然,对于长度X,只要有一个质数使X-它是一个必胜态,X就是先手的必胜态,这可以通过记忆化搜索快速实现
代码实现:
t=int(input())
isp =[1 for i in range(10**5+10)]
pri=[]dp=[-1 for i in range(10**5+10)]def f(x):if dp[x]!=-1:return dp[x]ans=1#只要有一条路到dp[k]=0就可以for i in pri:if i>x:breakif f(x-i)==0:ans=0breakif ans==0:dp[x]=1else:dp[x]=0return dp[x]for i in range(2,10**5+10):if isp[i]:pri.append(i)for j in pri:if i*j>1e5:breakisp[i*j]=0if i%j==0:breakdp[0]=dp[1]=0
dp[2]=dp[3]=1
for i in range(4,10**5+1):dp[i]=f(i)for i in range(t):k=int(input())print(dp[k])
4.思维题:5996. 回文字符串 - AcWing题库
思路:这题比较有意思,首先我们需要发现一个特点:任何一个字符串都是ABC的形式,其中A和C只有l,q,b这些字母,而B则是没有l,q,b的字符串。
想到了这一点,后面就自然而然了:我们可以得到要yes的话的就必须满足(1)或(2)(3):
(1)B为空
(2)B为回文串
(3)A的逆序串是C的前缀
代码实现:
t=int(input())def jd(k):if k=='l' or k=='q' or k=='b':return 1return 0
for _ in range(t):s=input()s="0"+sl=0r=len(s)for i in range(1,len(s)):if jd(s[i])==0:breakl+=1if l==len(s)-1:print("Yes")continuefor i in range(len(s)-1,0,-1):if jd(s[i])==0:breakr-=1ss=''.join(reversed(s[l+1:r]))if ss!=s[l+1:r]:print("No")continuewhile l>=1 and r<=len(s)-1 and s[l]==s[r]:l-=1r+=1if l==0:print("Yes")else:print("No")
5.模拟:5993. 回文数组 - AcWing题库
思路:我们从两端开始向内收缩,然后简单分类讨论一下即可
代码实现:
n=int(input())
a=[0]+list(map(int,input().split()))
ans=0
for i in range(1,n//2+1):if a[i]==a[n-i+1]:continueelif a[i]>a[n-i+1]:ans+=abs(a[i]-a[n-i+1])if i+1>=n-i+1-1:continueelse:if a[i+1]>a[n-i]:if abs(a[i]-a[n-i+1])>=a[i+1]-a[n-i]:a[i+1]=a[n-i]else:a[i+1]-=abs(a[i]-a[n-i+1])else:ans+=abs(a[i]-a[n-i+1])if i+1>=n-i+1-1:continueelse:if a[i+1]<a[n-i]:if abs(a[i]-a[n-i+1])>=a[n-i]-a[i+1]:a[i+1]=a[n-i]else:a[i+1]+=abs(a[i]-a[n-i+1])
print(ans)
6.结论题:5991. 数字诗意 - AcWing题库
思路:建议大家去按照等比数列写一下数学式子,再带几个数进去,或者建议这种看规律的打一下表,最后就是除了2的幂次方其他都可以,另外有一个小trick就是通过(x-1)&x来快速判断一个数是否为2的幂次
代码实现:
n=int(input())
k=[0]+list(map(int,input().split()))ans=0
def jud(num):if (num-1)&num==0:return 1return 0
for i in range(1,n+1):if jud(k[i])==1:ans+=1
print(ans)
7.最大生成树+动态规划:5997. 吊坠 - AcWing题库
思路:说实话,个人感觉这个题就是这两个知识点硬凑上去。首先我们先求边权,这里看到环很容易想到石子合并破环成链,我们复制一遍然后就是DP了。
求完边权后就是一个典型的最大生成树了
代码实现:
n,m=map(int,input().split())s=[]for i in range(n):s.append(input())s[-1]=s[-1]*2mp=[[-1 for i in range(n+1)] for j in range(n+1)]def calc(x,y):if(mp[x][y]!=-1):return mp[x][y]ans=0dp=[[0 for i in range(2*m+1)] for j in range(2*m+1)]for i in range(1,2*m+1):for j in range(1,2*m+1):if s[x][i-1]==s[y][j-1]:dp[i][j]=dp[i-1][j-1]+1else:dp[i][j]=0ans=max(ans,dp[i][j])mp[x][y]=mp[y][x]=min(m,ans)return mp[x][y]for i in range(n):for j in range(n):mp[i][j]=calc(i,j)dis=[-1e9 for i in range(n+1)]
vis=[0 for i in range(n+1)]
dis[0]=0
ans=0
for i in range(n):x=0for j in range(n):if vis[x] or ((not vis[j]) and dis[j]>dis[x]):x=jans+=dis[x]vis[x]=1for y in range(n):dis[y]=max(dis[y],calc(x,y))
print(ans)
8.思维题:6008. 连连看 - AcWing题库
思路:可以发现满足的两点都是在y=x或者y=-x上,因此我们就依次枚举矩形的对角线(不是很准确),然后看看上面有几个相等的元素即可。
代码实现:
g=[[0]*1010 for i in range(1010)]def dg(x,y):cnt=[0]*(1010)if x==n or y==m:return 0while x<=n and y<=m:cnt[g[x][y]]+=1x+=1y+=1res=0for i in range(1,1001):if cnt[i]>1:res+=cnt[i]*(cnt[i]-1)return resdef udg(x,y):cnt=[0]*(1010)if x==n or y==1:return 0while x<=n and y>=1:cnt[g[x][y]]+=1x+=1y-=1res=0for i in range(1,1001):if cnt[i]>1:res+=cnt[i]*(cnt[i]-1)return resif __name__=='__main__':n,m=map(int,input().split())ans=0for i in range(1,n+1):tt=list(map(int,input().split()))for j in range(1,m+1):g[i][j]=tt[j-1]for i in range(1,n+1):ans+=dg(i,1)for i in range(2,m+1):ans+=dg(1,i)for i in range(1,m+1):ans+=udg(1,i)for i in range(2,n+1):ans+=udg(i,m)print(ans)
9.模拟题:6009. 神奇闹钟 - AcWing题库
思路:蓝桥杯一贯的日历问题,大家记住闰年以及2月的日子+细心就没多大问题了
代码实现:
days=[0,31,28,31,30,31,30,31,31,30,31,30,31]def is_leap(y):return y%400==0 or y%4==0 and y%100!=0def dayofmonth(y,m):if m==2:return 28+is_leap(y)return days[m]def bd(y,m,d):yy,mm,dd=1970,1,1res=0while yy!=y:res+=365+is_leap(yy)yy+=1while mm!=m:res+=dayofmonth(yy,mm)mm+=1res+=d-1return resdef get(y,m,d,h,mi):res=bd(y,m,d)*24*60res+=60*hres+=mireturn resdef nextday(k):y,m,d,h,mi,s=1970,1,1,0,0,0while k>=(365+is_leap(y))*24*60:k-=(365+is_leap(y))*24*60y+=1while k>=dayofmonth(y,m)*24*60:k-=dayofmonth(y,m)*24*60m+=1while k>=24*60:k-=24*60d+=1h=k//60mi=k%60print("%d-%02d-%02d %02d:%02d:%02d"%(y,m,d,h,mi,s))t=int(input())
for _ in range(t):s1,s2,s3=input().split()y,m,d=map(int,s1.split('-'))h,mi,s=map(int,s2.split(":"))x=int(s3)k=get(y,m,d,h,mi)k-=k%xnextday(k)
10.分类讨论:6010. 蓝桥村的真相 - AcWing题库
思路:从一开始就最多只有四种情况:101,110,011,000,然后依次讨论即可
代码实现:
t=int(input())
for _ in range(t):n=int(input())if n%3==0:print(2*n)else:print(n)
11.并查集:6012. 缴纳过路费 - AcWing题库
代码实现:
n,m,l,r=map(int,input().split())
fa1=[i for i in range(n+10)]
siz1=[1 for i in range(n+10)]
fa2=[i for i in range(n+10)]
siz2=[1 for i in range(n+10)]
def find(x):if x==fa1[x]:return xfa1[x]=find(fa1[x])return fa1[x]
def find1(x):if x==fa2[x]:return xfa2[x]=find1(fa2[x])return fa2[x]
def merge(x,y):if find(x)==find(y):returnsiz1[find(y)]+=siz1[find(x)]fa1[find(x)]=find(y)
def merge1(x,y):if find1(x)==find1(y):returnsiz2[find1(y)]+=siz2[find1(x)]fa2[find1(x)]=find1(y)
for i in range(m):u,v,w=map(int,input().split())if w<=r:merge(u,v)if w<l:merge1(u,v)
ans=0
for i in range(1,n+1):if find(i)==i:ans+=(siz1[i]-1)*siz1[i]//2if find1(i)==i:ans-=(siz2[i]-1)*siz2[i]//2
print(ans)
12.思维+分类讨论:6013. 纯职业小组 - AcWing题库
思路:这题感觉出的还蛮好的。我们先进行离散化:这里用去重+排序+二分。然后我们先判断可不可以:对于每一个//3求和并和k比较即可。
当判断可以后,我们再原问题进行转化(因为直接求k个的最小比较麻烦):等价于求k-1个的最大数+1
接下来,对于<=2的我们就直接全取,对于>2的:假设是一个类别中为001001...(只是为了方便解释,实际上是同一个)我们先全部取2,现在就是1001....然后分3组:
(1)最后是1
(2)最后是10
(3) 最后是100
显然(3)最理想,(2)其次,(1)最后,有几个(3)呢?就是(c[i]-2)//3的求和,(1)(2)通过(c[i]-2)%3可以得到。最后答案按照这个思路求即可
代码实现:
def makearray(length):return [0 for i in range(length)]t=int(input())
N=2*10**5+10
a=makearray(N)
b=makearray(N)
c=makearray(N)def bseek(arr,val):l,r=0,len(arr)-1while l<r:mid=(l+r)//2if arr[mid]>val:r=midelif arr[mid]<val:l=mid+1else:return midreturn l
for _ in range(t):n,k=map(int,input().split())k-=1for i in range(n):aa,bb=map(int,input().split())a[i]=aab[i]=bbc[i]=0sa=a[:n]#set会改变顺序!!!!!!sa=list(set(sa))sa.sort()# for i in range(len(sa)):# print(sa[i],end=" ")# print()for i in range(n):c[bseek(sa,a[i])]+=b[i]res=summ=0d=[0,0,0]count=kcnt=0for i in range(0,len(sa)):summ+=c[i]//3if c[i]<=2:res+=c[i]else:res+=2cnt+=((c[i]-2)//3)d[(c[i]-2)%3]+=1if summ<k:print(-1)continuecnt=min(cnt,k)res+=cnt*3k-=cntfor i in range(2,0,-1):tx=min(d[i],k)k-=txres+=tx*iprint(res+1)
易错点:
1.递归不能太深:
该问题来源于植物生命力这题,正常的DFS递归只得到了70%的分,原因在于递归太深了
一般求树、图的问题,涉及到的递归深度一般1e5的数量级,而python的默认递归深度为1000
怎么解决呢?我们可以通过装饰器来把递归改成迭代的形式,听上去很难,但是可以直接当成一个模板来记,这样就AC了,但是可能会MLE(目前还没有遇到这种情况)
具体方法如下:
py装饰器强行DFS,突破递归深度限制_灵神的codeforce账号-CSDN博客
按照上面博客写的套到自己DFS上就可以啦
2.Python中reverse方法返回的迭代器,如果要变成string可以参考第四题的写法:

3.时刻注意for中左闭右开的原则,第五题我的循环for(1,n//2)一直没检查出来(我太菜了)
4.python中set会把原来有序的列表打乱,所以应该是先去重再排序
5.函数体用到外面的变量记得先声明全局变量
相关文章:
第15届蓝桥杯省赛python组A,B,C集合
过几天就省赛了,一直以来用的是C,Python蓝桥杯也是刚刚开始准备(虽然深度学习用的都是python,但是两者基本没有任何关系),这两天在做去年题时犯了很多低级错误,因此记录一下以便自己复查 PS&am…...
AWS 云运维管理指南
一、总体目标 高可用性:通过跨可用区 (AZ) 和跨区域 (Region) 的架构设计,确保系统运行可靠。性能优化:优化AWS资源使用,提升应用性能。安全合规:利用AWS内置安全服务,满足行业合规要求(如GDPR、ISO 27001、等保2.0)。成本管控:通过成本优化工具,减少浪费,实现FinOp…...
为什么有的深度学习训练,有训练集、验证集、测试集3个划分,有的只是划分训练集和测试集?
在机器学习和深度学习中,数据集的划分方式取决于任务需求、数据量以及模型开发流程的严谨性。 1. 三者划分:训练集、验证集、测试集 目的 训练集(Training Set):用于模型参数的直接训练。验证集(Validati…...
虚拟现实 UI 设计:打造沉浸式用户体验
VR UI 设计基础与特点 虚拟现实技术近年来发展迅猛,其独特的沉浸式体验吸引了众多领域的关注与应用。在 VR 环境中,UI 设计扮演着至关重要的角色,它是用户与虚拟世界交互的桥梁。与传统 UI 设计相比,VR UI 设计具有显著的特点。传…...
前端Uniapp接入UviewPlus详细教程!!!
相信大家在引入UviewPlusUI时遇到很头疼的问题,那就是明明自己是按照官网教程一步一步的走,为什么到处都是bug呢?今天我一定要把这个让人头疼的问题解决了! 1.查看插件市场 重点: 我们打开Dcloud插件市场搜素uviewPl…...
【性能优化点滴】odygrd/quill在编译期做了哪些优化
Quill 是一个高性能的 C 日志库,它在编译器层面进行了大量优化以确保极低的运行时开销。以下是 Quill 在编译器优化方面的关键技术和实现细节: 1. 编译时字符串解析与格式校验 Quill 在编译时完成格式字符串的解析和校验,避免运行时开销&…...
02 反射 泛型(II)
目录 一、反射 1. 反射引入 2. 创建对象 3. 反射核心用法 二、泛型 1. 泛型的重要性 (1)解决类型安全问题 (2)避免重复代码 (3)提高可读性和维护性 2. 泛型用法 (1)泛型类 …...
Spring Boot 七种事务传播行为只有 REQUIRES_NEW 和 NESTED 支持部分回滚的分析
Spring Boot 七种事务传播行为支持部分回滚的分析 支持部分回滚的传播行为 REQUIRES_NEW:始终开启新事务,独立于外部事务,失败时仅自身回滚。NESTED:在当前事务中创建保存点(Savepoint),可局部…...
ZLMediaKit 源码分析——[5] ZLToolKit 中EventPoller之延时任务处理
系列文章目录 第一篇 基于SRS 的 WebRTC 环境搭建 第二篇 基于SRS 实现RTSP接入与WebRTC播放 第三篇 centos下基于ZLMediaKit 的WebRTC 环境搭建 第四篇 WebRTC学习一:获取音频和视频设备 第五篇 WebRTC学习二:WebRTC音视频数据采集 第六篇 WebRTC学习三…...
元宇宙浪潮下,前端开发如何“乘风破浪”?
一、元宇宙对前端开发的新要求 元宇宙的兴起,为前端开发领域带来了全新的挑战与机遇。元宇宙作为一个高度集成、多维互动的虚拟世界,要求前端开发不仅具备传统网页开发的能力,还需要掌握虚拟现实(VR)、增强现实&#…...
2025年3月 Scratch 图形化(二级)真题解析 中国电子学会全国青少年软件编程等级考试
2025.03Scratch图形化编程等级考试二级真题试卷 一、选择题 第 1 题 甲、乙、丙、丁、戊五人参加100米跑比赛,甲说:“我的前面至少有两人,但我比丁快。”乙说:“我的前面是戊。”丙说:“我的后面还有两个人。”请从前往后(按照速度快慢&a…...
【新能源汽车整车动力学模型深度解析:面向MATLAB/Simulink仿真测试工程师的硬核指南】
1. 前言 作为MATLAB/Simulink仿真测试工程师,掌握新能源汽车整车动力学模型的构建方法和实现技巧至关重要。本文将提供一份6000+字的深度技术解析,涵盖从基础理论到Simulink实现的完整流程。内容经过算法优化设计,包含12个核心方程、6大模块实现和3种验证方法,满足SEO流量…...
MCP协议的Streamable HTTP:革新数据传输的未来
引言 在数字化时代,数据传输的效率和稳定性是推动技术进步的关键。MCP(Model Context Protocol)作为AI生态系统中的重要一环,通过引入Streamable HTTP传输机制,为数据交互带来了革命性的变化。本文将深入解读MCP协议的…...
dify中配置使用Ktransformer模型
一共是两个框架一个是Ktransformer,一个是dify。 Ktransformer用来部署LLM,比如Deepseek,而LLm的应用框架平台Dify主要用来快速搭建基于LLM应用。 这篇教程主要是用来介绍两个框架的交互与对接的,不是部署Ktransformer也部署部署Dify,要部署Dify、Ktransformer可以直接参考…...
从代码学习深度学习 - GRU PyTorch版
文章目录 前言一、GRU模型介绍1.1 GRU的核心机制1.2 GRU的优势1.3 PyTorch中的实现二、数据加载与预处理2.1 代码实现2.2 解析三、GRU模型定义3.1 代码实现3.2 实例化3.3 解析四、训练与预测4.1 代码实现(utils_for_train.py)4.2 在GRU.ipynb中的使用4.3 输出与可视化4.4 解析…...
二叉树 递归
本篇基于b站灵茶山艾府的课上例题与课后作业。 104. 二叉树的最大深度 给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出&…...
#SVA语法滴水穿石# (002)关于 |-> + ##[min:max] 的联合理解
今天,我们着重理解一些概念。依靠死记硬背去理解知识点,是不长久的,必须深刻理解知识点的精髓,才能长久记忆。 先看如下的代码: property a2b_p; //描述属性@(posedge clk) $rose(tagError) |-> ##[2:4] $rose(tErrorBit); endproperty a2b_a: asser…...
反常积分和定积分的应用 2
世界尚有同类 前言伽马函数的推论关于数学的思考平面图形的面积笛卡尔心形线伯努利双纽线回顾参数方程求面积星型线摆线 旋转体体积一般轴线旋转被积函数有负数部分曲线的弧长最后一个部分内容-旋转曲面侧表面积直角坐标系极坐标系参数方程 总结 前言 力大出奇迹。好好加油。 …...
新零售系统是什么样的?有什么好处?
一、新零售系统的核心架构与特征 技术驱动的分层架构 **前端展示层:**支持多终端适配(如APP、小程序、线下智能设备),采用响应式设计提升用户体验。 **业务中台层:**基于微服务架构(如Spring Clou…...
Element-plus弹出框popover,使用自定义的图标选择组件
自定义的图标选择组件是若依的项目的 1. 若依的图标选择组件 js文件,引入所有的svg图片 let icons [] // 注意这里的路径,一定要是自己svg图片的路径 const modules import.meta.glob(./../../assets/icons/svg/*.svg); for (const path in modules)…...
16进制在蓝牙传输中的应用
在蓝牙传输中,16进制(Hexadecimal)是一种常用的数据表示方法。它主要用于描述数据包的内容、地址、命令、参数等信息。以下是16进制在蓝牙传输中的具体应用场景和作用: 1. 数据包的表示 蓝牙通信中,所有数据最终都以二…...
思维链 Chain-of-Thought(COT)
思维链 Chain-of-Thought(COT):思维链的启蒙 3. 思维链 Chain-of-Thought(COT)存在问题?2. 思维链 Chain-of-Thought(COT)是思路是什么?1. 什么是 思维链 Chain-of-Thoug…...
硬件电路(23)-输入隔离高低电平有效切换电路
一、概述 项目中为了防止信号干扰需要加一些隔离电路,而且有时传感器的信号是高有效有时是低有效,所以基于此背景,设计了一款方便实现高低电平有效检测切换电路。 二、应用电路...
多表查询的多与一
1.查寻表需要的条件 1.1.首先我们要了解查询表有哪些 1.1.1.多对一 多对一就是一个年表拥有例外一个表的多条数据 一个表对应立一个表的多条数据,另一个表对应这个表的多条数据 这个点被称为多对一 1.1.2.多对多 多对多简单来说就是需要一个中间商 中间商就…...
大模型学习二:DeepSeek R1+蒸馏模型组本地部署与调用
一、说明 DeepSeek R1蒸馏模型组是基于DeepSeek-R1模型体系,通过知识蒸馏技术优化形成的系列模型,旨在平衡性能与效率。 1、技术路径与核心能力 基础架构与训练方法 DeepSeek-R1-Zero:通过强化学习(RL)训练&…...
相机的曝光和增益
文章目录 曝光增益增益原理主要作用增益带来的影响增益设置与应用 曝光 参考:B站优致谱视觉 增益 相机增益是指相机在拍摄过程中对图像信号进行放大的一种操作,它在提高图像亮度和增强图像细节方面起着重要作用,以下从原理、作用、影响以…...
Linux内核物理内存组织结构
一、系统调用sys_mmap 系统调用mmap用来创建内存映射,把创建内存映射主要的工作委托给do_mmap函数,内核源码文件处理:mm/mmap.c 二、系统调用sys_munmap 1、vma find_vma (mm, start); // 根据起始地址找到要删除的第一个虚拟内存区域 vma 2…...
【PostgreSQL内核学习:深入理解 PostgreSQL 中的 tuplesort_performsort 函数】
深入理解 PostgreSQL 中的 tuplesort_performsort 函数 函数概述函数源码函数签名核心功能相关函数简介 代码结构与逻辑分析1. 内存上下文切换2. 调试跟踪(可选)3. 状态机逻辑(switch 分支)4. 调试跟踪(完成时…...
谷歌 Gemini 2.5 Pro 免费开放
2025 年 3 月 30 日,谷歌宣布将最新的 Gemini AI 旗舰模型 Gemini 2.5 Pro 免费向所有 Gemini 应用用户开放。以下是关于此次免费开放的一些具体信息1: 背景:此前,Gemini 2.5 Pro 仅向支付 19.99 美元月费的 Gemini Advanced 用户…...
(多看) CExercise_05_1函数_1.2计算base的exponent次幂
题目: 键盘录入两个整数:底(base)和幂指数(exponent),计算base的exponent次幂,并打印输出对应的结果。(注意底和幂指数都可能是负数) 提示:求幂运算时,基础的思路就是先无脑把指数转…...
