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

第十四届蓝桥杯大赛软件赛国赛Python大学B组题解

文章目录

  • 弹珠堆放
  • 划分
  • 偶串
  • 交易账本
  • 背包问题
  • 翻转
  • 最大阶梯
  • 最长回文前后缀
  • 贸易航线
  • 困局

弹珠堆放

在这里插入图片描述

递推式 a i = a i − 1 + i a_i=a_{i-1}+i ai=ai1+i n = 20230610 n=20230610 n=20230610非常小,直接模拟

答案等于 494 494 494

划分

在这里插入图片描述

  • 因为总和为 1 e 6 1e6 1e6,因此可以dp,就是一个存在性01背包问题
  • 答案为 12873625444 12873625444 12873625444

偶串

在这里插入图片描述

  • 直接一个桶记录就好
  • 才发现,蓝桥杯oj使用exit(0)会段错误得使用sys.exit(0)
import sys
from collections import defaultdict
input=lambda:sys.stdin.readline().strip()
read=lambda:map(int,input().split())d=defaultdict(int)
s=input()
for c in s:d[c]+=1for x,y in d.items():if y%2==1:print('NO')sys.exit(0)print('YES')

交易账本

在这里插入图片描述
恶心的模拟题

import sys
from collections import defaultdict
input=lambda:sys.stdin.readline().strip()
read=lambda:map(int,input().split())def solve():n,m=read()acc=[[] for _ in range(m)]vis=[[] for _ in range(m)]ok=Truefor _ in range(m):s=list(read())idx=0x=s[idx]idx+=1all=0f=Falsewhile x:x-=1id,c=s[idx],s[idx+1]idx+=2if id==-1 and c==-1:f=Truecontinueif c>=len(acc[id]):ok=Falsecontinueif vis[id][c]:ok=Falsecontinuevis[id][c]=Trueall+=acc[id][c]x=s[idx]idx+=1while x:x-=1id,c=s[idx],s[idx+1]idx+=2all-=cacc[_].append(c)vis[_].append(False)if not f and all!=0:ok=Falseprint('YES' if ok else 'NO')
T=1
T=int(input())
for _ in range(T):solve()

背包问题

在这里插入图片描述
在这里插入图片描述

  • 看数据应该是枚举其中一种cnt,vp过了赛后交一发t了,神奇的oj
  • 首先枚举前面两个桶装A的数量,然后前两个桶贪心地装B
  • 那么剩下一个桶呢?肯定是先贪心放体积更小的
  • 复杂度 O ( c n t 2 ) O(cnt^2) O(cnt2)
import sys
from collections import defaultdict
input=lambda:sys.stdin.readline().strip()
read=lambda:map(int,input().split())def solve():B=list(read())cnta,cntb=read()va,vb=read()ans=0for i in range(min(cnta,B[0]//va)+1):for j in range(min(cnta-i,B[1]//va)+1):ra=cnta-i-jA=[B[0]-i*va,B[1]-j*va,B[2]]res=i+jt=min(A[0]//vb+A[1]//vb,cntb)rb=cntb-tres+=tif va<vb:tmp=min(A[2]//va,ra)A[2]-=tmp*vares+=tmp+min(A[2]//vb,rb)else:tmp=min(A[2]//vb,rb)A[2]-=tmp*vbres+=tmp+min(A[2]//va,ra)ans=max(ans,res)print(ans)T=1+0
T=int(input())
for _ in range(T):solve()

翻转

在这里插入图片描述
在这里插入图片描述

  • 很典的线性dp, d p i , 0 / 1 dp_{i,0/1} dpi,0/1表示当前是否翻转即可
  • 复杂度 O ( n ) O(n) O(n)
import sys
from collections import defaultdict
from math import inf
input=lambda:sys.stdin.readline().strip()
read=lambda:map(int,input().split())def solve():n=int(input())dp=[[inf]*2 for _ in range(n+1)]s=[0]*(n+1)for i in range(1,n+1):s[i]=input()dp[1][0]=dp[1][1]=2for i in range(2,n+1):for x in range(2):for y in range(2):dp[i][y]=min(dp[i][y],dp[i-1][x]+2-(s[i][y]==s[i-1][x^1]))print(min(dp[n][0],dp[n][1]))T=1
# T=int(input())
for _ in range(T):solve()

最大阶梯

在这里插入图片描述
在这里插入图片描述

  • 全场第二恶心的题
  • vp没想好居然旋转了45度再dp
  • 实际上直接dp四次就行
  • 复杂度 O ( n 2 ) O(n^2) O(n2)
import sys
from collections import defaultdict
from math import inf
input=lambda:sys.stdin.readline().strip()
read=lambda:map(int,input().split())def solve():n=int(input())a=[[inf]*(n+2)]for _ in range(n):a.append([inf]+list(read())+[inf])a.append([inf]*(n+2))ans=0dp=[[0]*(n+10) for _ in range(n+10)]for i in range(1,n+1):for j in range(1,n+1):if a[i][j]==a[i-1][j]==a[i][j-1]:dp[i][j]=min(dp[i-1][j],dp[i][j-1])+1else:dp[i][j]=1ans=max(ans,dp[i][j])dp=[[0]*(n+10) for _ in range(n+10)]for i in range(n,0,-1):for j in range(1,n+1):if a[i][j]==a[i+1][j]==a[i][j-1]:dp[i][j]=min(dp[i+1][j],dp[i][j-1])+1else:dp[i][j]=1ans=max(ans,dp[i][j])dp=[[0]*(n+10) for _ in range(n+10)]for i in range(1,n+1):for j in range(n,0,-1):if a[i][j]==a[i-1][j]==a[i][j+1]:dp[i][j]=min(dp[i-1][j],dp[i][j+1])+1else:dp[i][j]=1ans=max(ans,dp[i][j])dp=[[0]*(n+10) for _ in range(n+10)]for i in range(n,0,-1):for j in range(n,0,-1):if a[i][j]==a[i+1][j]==a[i][j+1]:dp[i][j]=min(dp[i+1][j],dp[i][j+1])+1else:dp[i][j]=1ans=max(ans,dp[i][j])print(ans)T=1
# T=int(input())
for _ in range(T):solve()

最长回文前后缀

在这里插入图片描述

  • 也是很典的manacher问题
  • 注意:前缀和后缀其中一个可以为0(这点题没表述清wa了一个点),其次数据太水,为什么 n 2 n^2 n2只是t一个点
  • 首先最小答案为1
  • 如果原本就是回文串,那么输出 2 n 2n 2n
  • 如果前后缀都选的话,那么假设前缀为 A A A,后缀为 B B B,且 ∣ A ∣ ≥ ∣ B ∣ |A| \geq |B| AB,那么 ∣ A ∣ = B r e v S |A|=B_{rev}S A=BrevS,因此最后的拼接字符串必定是 B S B r e v BSB_{rev} BSBrev这种形式
  • 用manacher预处理出 L i L_i Li表示以 i i i为左端点的最长回文串, R i R_i Ri表示以 i i i为右端点的最长回文串
  • 那么我们枚举前后缀的合法长度,假设 S [ 1 : i ] = S [ n − i + 1 : n ] S[1:i]=S[n-i+1:n] S[1:i]=S[ni+1:n],然后我们看中间部分是属于前缀还是后缀即可
  • 复杂度 O ( n ) O(n) O(n)
import sys
from collections import defaultdict
from math import inf
input=lambda:sys.stdin.readline().strip()
read=lambda:map(int,input().split())def manacher(s):n=len(s)s='^#'+'#'.join(s)+'#$'id,mr=0,0p=[0]*(len(s))for i in range(1,2*n+1):if i<mr:p[i]=min(p[2*id-i],mr-i)else:p[i]=1while s[i+p[i]]==s[i-p[i]]:p[i]+=1if i+p[i]>mr:id=imr=i+p[i]return pdef solve():s=input()p=manacher(s)# print(p)n=len(s)L=[0]*(n+1)R=[0]*(n+1)for i in range(1,2*n+1):if p[i]<=1:continuer=(p[i]-1)//2if i%2==0:L[i//2-r]=max(L[i//2-r],p[i]-1)R[i//2+r]=max(R[i//2+r],p[i]-1)else:L[i//2-r+1]=max(L[i//2-r+1],p[i]-1)R[i//2+r]=max(R[i//2+r],p[i]-1)Len=0i,j=0,n-1ok=0while i<=j:if s[i]!=s[j]:Len=iok=1breaki+=1j-=1if not ok:print(2*n)returnif Len==0:print(1)return# for i in range(1,n):print(i,L[i],R[i])ans=0for l in range(1,Len+1):# print(l,2*l+L[l+1],2*l+R[n-l])ans=max(ans,l*2+L[l+1],l*2+R[n-l])print(ans)T=1
# T=int(input())
for _ in range(T):solve()

贸易航线

在这里插入图片描述
在这里插入图片描述

  • 思维题
  • 关键点:每次卖出肯定是只卖一种商品更优的
  • 因此我们每次看卖哪种商品即可
  • 定义 d p i dp_i dpi为在第 i i i个点,刚好卖出所有物品的最大收益
  • 定义 m x j mx_j mxj表示前面买入了 j j j物品后的最大收益
  • 那么转移很简单,如果不卖任何商品 d p i = d p i − 1 dp_i=dp_{i-1} dpi=dpi1
  • 卖第 j j j个物品, d p i = m x j + k ⋅ P i , j dp_{i}=mx_j+k\cdot P_{i,j} dpi=mxj+kPi,j
  • 更新 m x j mx_j mxj m x j = m a x ( m x j , d p i − k ⋅ P i , j ) mx_j=max(mx_j,dp_i-k \cdot P_{i,j}) mxj=max(mxj,dpikPi,j)
import sys
from collections import defaultdict
from math import inf
input=lambda:sys.stdin.readline().strip()
read=lambda:map(int,input().split())def solve():n,m,k=read()P=[[0]*(n+1)]dp=[-inf]*(n+1)dp[0]=0for i in range(n):P.append([0]+list(read()))mx=[-inf]*(m+1)ans=0for i in range(1,n+1):dp[i]=max(dp[i],dp[i-1])for j in range(1,m+1):if P[i][j]==-1:continuedp[i]=max(dp[i],mx[j]+P[i][j]*k)for j in range(1,m+1):if P[i][j]==-1:continuemx[j]=max(mx[j],dp[i]-P[i][j]*k)ans=max(ans,dp[i])print(ans)
T=1
# T=int(input())
for _ in range(T):solve()

困局

在这里插入图片描述
在这里插入图片描述

  • 暴力,可以拿30%
  • 打表发现k为奇数无解
import sys
from collections import defaultdict
from math import inf
input=lambda:sys.stdin.readline().strip()
read=lambda:map(int,input().split())MOD=998244353
n,k=read()
if k%2==1:print(0)sys.exit(0)
match=[0]*(n+1)
def check():x=0cnt=0vis=[0]*(n+1)while True:x+=1if x>n:breakif match[x] and not vis[x]:vis[x]=1x=match[x]cnt+=1return cnt==2*kans=[0]
def dfs(x,st):if x==k+1:if check():ans[0]+=1# print(match[1:])returnfor i in range(st+1,n+1):if match[i]:continuefor j in range(i+1,n+1):if match[j]:continuematch[i]=jmatch[j]=idfs(x+1,i)match[i]=0match[j]=0dfs(1,0)
print(ans[0]%MOD)
  • 发现方案只与这 2 k 2k 2k个位置有关,因此我们先令 n = 2 k n=2k n=2k计算出相对顺序的方案数 a n s ans ans
  • vp的时候居然没想到如此简单的方法,但是官方正解好像不是这个。。
  • 那么计算出相对顺序后,只需要在n个点选2k个即可,答案就是 a n s ⋅ ( n 2 k ) ans \cdot \binom{n}{2k} ans(2kn)
import sys
from collections import defaultdict
from math import inf
input=lambda:sys.stdin.readline().strip()
read=lambda:map(int,input().split())MOD=998244353
n,k=0,0
match=[]
def check():x=0cnt=0vis=[0]*(n+1)while True:x+=1if x>n:breakif match[x] and not vis[x]:vis[x]=1x=match[x]cnt+=1return cnt==2*kans=[0]
def dfs(x,st):if x==k+1:if check():ans[0]+=1# print(match[1:])returnfor i in range(st+1,n+1):if match[i]:continuefor j in range(i+1,n+1):if match[j]:continuematch[i]=jmatch[j]=idfs(x+1,i)match[i]=0match[j]=0
nn,kk=read()
if kk%2:print(0)sys.exit(0)k=kk
n=2*k
match=[0]*(n+1)
dfs(1,0)n=nn
fac=[1]*(n+1)
inv=[0]*(n+1)
for i in range(2,n+1):fac[i]=fac[i-1]*i%MODinv[n]=pow(fac[n],MOD-2,MOD)
for i in range(n-1,-1,-1):inv[i]=inv[i+1]*(i+1)%MODdef C(n,m):if n<m:return 0return fac[n]*inv[m]*inv[n-m]%MODprint(ans[0]*C(n,2*k)%MOD)

相关文章:

第十四届蓝桥杯大赛软件赛国赛Python大学B组题解

文章目录 弹珠堆放划分偶串交易账本背包问题翻转最大阶梯最长回文前后缀贸易航线困局 弹珠堆放 递推式 a i a i − 1 i a_ia_{i-1}i ai​ai−1​i&#xff0c; n 20230610 n20230610 n20230610非常小&#xff0c;直接模拟 答案等于 494 494 494 划分 因为总和为 1 e 6 1e6…...

折叠屏手机:技术进步了,柔性OLED面板测试技术需求跟上了吗?

全球智能手机市场陷入创新焦虑&#xff0c;折叠屏手机被寄予厚望&#xff0c;2023 年出货量同比增长 62%。但在供应链技术狂欢背后&#xff0c;存在诸多问题。消费端数据显示&#xff0c;用户使用频率低&#xff0c;定价策略反常。产业链重构虽让部分企业获利&#xff0c;却推高…...

30天学Java第九天——线程

并行与并发的区别 并行是多核 CPU 上的多任务处理&#xff0c;多个任务在同一时间真正的同时执行并发是单核 CPU 上的多任务处理&#xff0c;多个任务在同一时间段内交替执行&#xff0c;通过时间片轮转实现交替执行&#xff0c;用于解决 IO 密集型任务的瓶颈 线程的创建方式…...

kotlin的takeIf使用

takeIf用于判断指定对象是否满足条件&#xff0c;满足就返回该对象自身&#xff0c;不满足返回null。因为可以返回对象自身&#xff0c;所以可以用作链式调用&#xff0c;以简化代码&#xff0c;又因takeIf可能返回空&#xff0c;所以常常和let结合使用&#xff0c;示例如下&am…...

计算机毕业设计指南

哈喽各位大四的小伙伴们&#xff0c;以下是一份详细的计算机专业毕业设计指南&#xff0c;涵盖选题、流程、技术选型、开发建议和常见问题解决方案&#xff0c;帮助你高效完成毕业设计&#xff0c;如有其他问题&#xff0c;欢迎点击文章末尾名片进行咨询&#xff0c;可免费赠送…...

自行搭建一个Git仓库托管平台

1.安装Git sudo apt install git 2.Git本地仓库创建&#xff08;自己选择一个文件夹&#xff09; git init 这里我在 /home/test 下面初始化了代码仓库 1. 首先在仓库中新建一个txt文件&#xff0c;并输入一些内容 2. 将文件添加到仓库 git add test.txt 执行之后没有任何输…...

LeeCode 409.最长回文串

给定一个包含大写字母和小写字母的字符串 s &#xff0c;返回 通过这些字母构造成的 最长的 回文串 的长度。 在构造过程中&#xff0c;请注意 区分大小写 。比如 "Aa" 不能当做一个回文字符串。 示例 1: 输入:s "abccccdd" 输出:7 解释: 我们可以构造的…...

ARM处理器内核全解析:从Cortex到Neoverse的架构与区别

ARM处理器内核全解析&#xff1a;从Cortex到Neoverse的架构与区别 ARM作为全球领先的处理器架构设计公司&#xff0c;其内核产品线覆盖了从高性能计算到低功耗嵌入式应用的广泛领域。本文将全面解析ARM处理器的内核分类、架构特点、性能差异以及应用场景&#xff0c;帮助读者深…...

【前端分享】JavaScript异步编程详解!

JavaScript 的异步编程是其核心特性之一&#xff0c;主要用于处理非阻塞操作&#xff08;如网络请求、文件读写、定时任务等&#xff09;。由于 JavaScript 是单线程的&#xff0c;异步机制可以避免代码阻塞&#xff0c;提高性能和用户体验。以下是 JavaScript 异步编程的核心概…...

工厂模式(简单工厂,工厂方法,抽象工厂)

工厂模式 工厂模式是java中最常用的设计模式&#xff0c;主要是用来完成对象的创建&#xff0c;使得对象创建过程和对象使用过程分离。 简单来说是取消对象创建者和使用者的耦合&#xff0c;简化new 对象的创建。 优势 &#xff1a;对象的属性创建完整。 缺点&#xff1a; 创建…...

Unity Internal-DeferredShading 分析

1. 延迟渲染的原理 延迟渲染主要包含了两个Pass。在第一个Pass中&#xff0c;我们不进行任何光照计算&#xff0c;而是仅仅计算哪些片元是可见的&#xff0c;这主要是通过深度缓冲技术来实现&#xff0c;当发现一个片元是可见的&#xff0c;我们就把它的相关信息存储到G缓冲区…...

嵌入式面试题:C 语言核心考点经典例题

引言 在嵌入式系统开发的面试中&#xff0c;常常会考察候选人对 C 语言基础知识的掌握程度。以下将详细分析几道常见的嵌入式面试题&#xff0c;包括解题步骤、涉及的知识点以及相关拓展。 题目 1 main() {unsigned char z0;unsigned char x100;unsigned char y10;z (~x)*(…...

Axure RP9教程 【数据传输】(页面值传递)| 作用域 :全局变量、局部变量

文章目录 引言作用域:全局变量作用域>局部变量作用域I 基于全局变量实现一个简单的登陆操作设置变量值的交互动作打开链接的交互动作接收并显示变量值注意点see also共享原型引言 全局变量在交互效果作用是页面值传递 作用域:全局变量作用域>局部变量作用域 全局变量…...

IBM Rational Software Architect安装感受及使用初体验

1 安装感受 最近准备用UML 2.0绘制模型图。在读UML创始人之一Grady Booch写的书《Object-Oriented Analysis and Design with Applications》&#xff08;第3版&#xff09;1时&#xff0c;发现书中用的UML工具之一为IBM Rational Software Architect&#xff08;RSA&#xff…...

VRRP学习

虚拟路由器冗余技术【三层技术】&#xff1a;网关冗余VRRP设计了VRRP组的概念&#xff0c;在一个 VRRP 组中&#xff0c;多台路由器共同构成一个虚拟路由器。这个虚拟路由器拥有一个虚拟 IP 地址【VRRP-ID默认是8位二进制&#xff0c;范围是0~255&#xff0c;用以标识和区别不同…...

C_内存 内存地址概念

1. 计算机内存的基本概念 计算机的内存&#xff08;RAM&#xff0c;随机存取存储器&#xff09;是用来存储程序运行时的数据和指令的地方。内存被划分为许多小单元&#xff0c;每个单元有一个唯一的地址&#xff0c;这些地址从0开始编号。 内存单元&#xff1a;每个内存单元通…...

GPT-5、o3和o4-mini即将到来

原计划有所变更: 关于我们应有何期待的一些零散想法。 深度研究(Deep Research)确实强大但成本高昂且速度较慢(当前使用o3模型)。即将推出的o4-mini在性能上可能与o3相近,但将突破这些限制,让全球用户——甚至免费用户(尽管会有速率限制)——都能用上世界顶级AI研究助…...

C#MVC项目引用Swagger的详细步骤

目录 一、安装Swagger依赖包二、配置Swagger服务三、启用XML注释四、调整启动配置五、验证与访问常见问题解决 以下是基于ASP.NET Core项目集成Swagger的详细步骤&#xff08;已适配当前项目结构&#xff09;&#xff1a; 一、安装Swagger依赖包 通过NuGet安装 右键点击项目…...

golang 对象池sync.Pool

Golang中的sync.Pool是什么&#xff1f; sync.Pool 是 Go 标准库中提供的一个对象池&#xff08;Object Pool&#xff09;实现&#xff0c;用于缓存和复用临时对象&#xff0c;以减少内存分配和垃圾回收&#xff08;GC&#xff09;的压力。它的主要特点是&#xff1a; 临时对…...

聚焦AI与大模型创新,紫光云如何引领云计算行业快速演进?

【全球云观察 &#xff5c; 科技热点关注】 随着近年来AI与大模型的兴起&#xff0c;云计算行业正在发生着一场大变局。 “在2025年春节期间&#xff0c;DeepSeek两周火爆全球&#xff0c;如何进行私域部署成了企业关心的问题。”紫光云公司总裁王燕平强调指出&#xff0c;AI与…...

去重新闻数据中重复的正文内容(body 字段),并把唯一的新闻内容保存到一个新的 JSON 文件中

示例代码&#xff1a; import os import json import nltk from tqdm import tqdmdef wr_dict(filename,dic):if not os.path.isfile(filename):data []data.append(dic)with open(filename, w) as f:json.dump(data, f)else: with open(filename, r) as f:data json.l…...

解决前后端时区不一致问题

前后端时区不一致导致&#xff1a; 》数据不显示在前端 》页面显示时间有误 》一些对时间有要求的方法&#xff0c;无法正确执行&#xff0c;出现null值&#xff0c;加上我们对null值有判断/注解&#xff0c;程序就会报错中断&#xff0c;以为是业务逻辑问题&#xff0c;其实…...

有哪些反爬机制可能会影响Python爬取视频?如何应对这些机制?

文章目录 前言常见反爬机制及影响1. IP 封禁2. 验证码3. 请求头验证4. 动态加载5. 加密与混淆6. 行为分析 应对方法1. 应对 IP 封禁2. 应对验证码3. 应对请求头验证4. 应对动态加载5. 应对加密与混淆6. 应对行为分析 前言 在使用 Python 爬取视频时&#xff0c;会遇到多种反爬…...

STL之序列式容器(Vector/Deque/List)

序列式容器 序列式容器包括&#xff1a;静态数组 array 、动态数组 vector 、双端队列 deque 、单链表 forward_ list 、双链表 list 。这五个容器中&#xff0c;我们需要讲解三个 vector 、 deque 、 list 的使 用&#xff0c;包括&#xff1a;初始化、遍历、尾部插入与删除、…...

小试牛刀-抽奖程序

编写抽奖程序 需求&#xff1a;设计一个抽奖程序&#xff0c;点击抽奖按钮随机抽取一个名字作为中奖者 目标&#xff1a;了解项目结构&#xff0c;简单UI布局&#xff0c;属性方法、事件方法&#xff0c;程序运行及调试 界面原型 ​ 待抽奖&#xff1a; 点击抽奖按钮&#x…...

Vue 3 中 ref 与 reactive 的对比

Vue 3 中 ref 与 reactive 的对比 Vue 3 中 ref 与 reactive 的对比一、定义和基本使用refreactive 二、响应式原理refreactive 三、适用场景refreactive 四、注意事项refreactive Vue 3 中 ref 与 reactive 的对比 在 Vue 3 中&#xff0c;ref 和 reactive 都是用于创建响应式…...

centos-stream-9上安装nvidia驱动和cuda-toolkit

这里写目录标题 驱动安装1. 更新系统2. NVIDIA GPU安装检查系统是否安装了 NVIDIA GPU2.1 首先&#xff0c;使用以下命令更新 DNF 软件包存储库缓存&#xff1a;2.2 安装编译 NVIDIA 内核模块所需的依赖项和构建工具2.3 在 CentOS Stream 9 上添加官方 NVIDIA CUDA 软件包存储库…...

从 MySQL 切换到国产 YashanDB 数据库时,需要在数据库字段和应用连接方面进行适配 ,使用总结

YashanDB | 崖山数据库系统 - 崖山科技官网崖山数据库系统YashanDB是深圳计算科学研究院完全自主研发设计的新型数据库系统&#xff0c;融入原创理论&#xff0c;支持单机/主备、共享集群、分布式等多种部署方式&#xff0c;覆盖OLTP/HTAP/OLAP交易和分析混合负载场景&#xff…...

【学习笔记】头文件中定义函数出现重复定义报错

目录 错误复现原因解决方案inlinestatic 扩展参考 错误复现 现在有一个头文件 duplicate_define.h 和两个源文件 duplicate_define_1.cpp 和 duplicate_define_2.cpp。 两个源文件都引入了头文件 duplicate_define.h&#xff0c;且在各自的函数中调用了定义在头文件中的全局函…...

游戏开发中 C#、Python 和 C++ 的比较

&#x1f3ac; Verdure陌矣&#xff1a;个人主页 &#x1f389; 个人专栏: 《C/C》 | 《转载or娱乐》 &#x1f33e; 种完麦子往南走&#xff0c; 感谢您的点赞、关注、评论、收藏、是对我最大的认可和支持&#xff01;❤️ 摘要&#xff1a; 那么哪种编程语言最适合游戏开发…...