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

CSP-VP37th

目录

1.数值积分

2.机器人饲养指南

3.模板展开

4.集体锻炼

5.收费标准评估


掐指算来好像有两个星期没算法了,之前忙于无聊的考试周和记八股,是时候来点有意思的算法题了,正好到时候6.8是38次CSP,OJ一下上一届的

这次OJ有几道题T了,但是网上找不到题解资源,官方题解好像在它们卖的书里面,哎光顾着圈钱了(说实话自青鱼老师的遭遇就让我抱有不太好感

1.数值积分

TUOJ

模拟题

b,c,l,r=map(int,input().split())def f(x):return x**2+b*x+cimport mathl=math.ceil(l)if l%2:l+=1summ=0for i in range(l,r+1,2):summ+=f(i)print(summ*2)

2.机器人饲养指南

TUOJ

动态规划-完全背包问题

n,m=map(int,input().split())a=list(map(int,input().split()))
'''
f=a.copy()
for i in range(m+1,n+1):ma=0for j in range(1,i//2+1):#分割思路错误:这样就必须是分两段if j>=n:breakma=max(ma,f[j-1]+f[i-j-1])f.append(ma)
'''#重新理一下:空间为n固定,要求价值最大:完全背包
F=[0]*(n+1)
def Cpack(F,c,w):for j in range(c,n+1):F[j]=max(F[j],F[j-c]+w)for i in range(1,m+1):#每天喂多少水果,也就是占用的容量c=iw=a[i-1]Cpack(F,c,w)print(F[-1])

3.模板展开

TUOJ

太久没用都忘记 replace 后要赋值了

直接模拟的话只能过40%后面就T了,有一个小点还是M的

#动态:当组成这个字符串所索引的 $ 对象变的时候也会随着变T=int(input())
d={}
for _ in range(T):temp=list(input().split())if temp[0]=='1':st=''for i in range(2,len(temp)):if temp[i][0]!='$':st+=temp[i]else:if temp[i][1:] in d:st+=d[temp[i][1:]]#st=''.join(s for s in temp[2:])d[temp[1]]=stelif temp[0]=='2':st=''for i in range(2,len(temp)):if temp[i][0]=='$':st+=temp[i]+'^'else:st+=temp[i]d[temp[1]]=stelse:#print(d)if temp[1] in d:l=d[temp[1]]for key in d:l=l.replace('$'+key+'^',d[key])#太久没用,都忘记replace要赋值了#print(l)print(len(l))else:print(0)
'''
l='$a^'
l.replace('$'+'a'+'^',d['a'])
print(l)
print('$'+'a'+'^')
'''

感觉主要是因为 3 里面的遍历replace超时了,

通过正则表达式优化了匹配思路,但是还是T

            pattern=r"\$.*?\^"matches=re.findall(pattern,l)for key in matches:l=l.replace(key,d[key[1:len(key)-1]])

我感觉是因为用py的原因

但是 g++ 也T了。。

目前还在研究

4.集体锻炼

模拟法后面T了


n=int(input())a=list(map(int,input().split()))import mathsu=0
MOD=998244353for i in range(n):gc = a[i]su = (su + (i+1) * (i+1) % MOD * gc % MOD) % MODfor j in range(i+1, n):gc = math.gcd(gc, a[j])su = (su + (i+1) * (j+1) % MOD * gc % MOD) % MODprint(su)

5.收费标准评估

图论

http://www.lqws.cn/news/157357.html

相关文章:

  • 麒麟信安系统下修改系统默认记录日志大小
  • [arthas]arthas安装使用
  • vue+element-ui一个页面有多个子组件组成。子组件里面有各种表单,实现点击enter实现跳转到下一个表单元素的功能。
  • 成都芯谷金融中心·文化科技产业园:构建产业新城的实践与探索
  • 基于大数据爬虫+智能AI的网络小说数据可视化系统设计与实现
  • Unity基础-Mathf相关
  • 3ds Max 渲染技术突破:一键解锁照片级真实感!
  • 小程序引入deepseek
  • 每日算法-250605
  • xmind转换为markdown
  • QQ邮箱发送验证码(Springboot)
  • SDC命令详解:使用set_max_fanout命令进行约束
  • MacOS解决局域网“没有到达主机的路由 no route to host“
  • [原创](现代Delphi 12指南):[macOS 64bit App开发]: TTask创建多线程, 更简单, 更快捷.
  • Git 安装全攻略Linux、macOS、Windows 与源码编译
  • redis数据过期策略、淘汰策略
  • 安卓四大组件数据存储Handler
  • React从基础入门到高级实战:React 实战项目 - 项目一:在线待办事项应用
  • Kafka入门-消费者
  • 作为过来人,浅谈一下高考、考研、读博
  • 关于akka官方quickstart示例程序(scala)的记录
  • UDP:简洁高效的报文结构解析与关键注意事项
  • 计算机网络备忘录
  • 网络通信核心概念全解析:从IP地址到TCP/UDP实战
  • ​减少交通拥堵、提高效率、改善交通安全的智慧交通开源了。
  • CodeGeeX 本地模式
  • Golang——9、反射和文件操作
  • 使用SSH tunnel访问内网的MySQL
  • VSCode主题定制:CSS个性化你的编程世界
  • nginx.conf配置详解:从(413 Request Entity Too Large)说起