暑假训练1

开始训练的第一天,重新了解了位运算,枚举,模拟。看的较为仔细的应该是位运算了,其他的有部分题目还未掌握,接下来会更加认真的。
**位运算**:其中比较重要的,常用的应该是逻辑运算符了,按位与,或,非,异或,还有常用的左移,右移。这些运算符的基础都是机器语言,所以都基于二进制。
与:全一则一,有零则零。
或:有一则一,全零则零。
异或:同则为零,异则为一。
左移:左移一位扩大两倍,n<<1=2*n。
右移:右移一位缩小两倍,n>>1=n/2。(向下取整)
应用:a的b次方对p取模;a乘b对p取模
处理方法:1.每个整数可唯一表示为若干指数不重复的2的次幂的和;
         2.b&1可以取出b的最后一位,b>>1舍去最后一位;
         3.数值过大防止溢出,每次%p;
         4.a*b%p时还可以利用a*b%p=a*b-(a*b/p)*p;
**二进制的状态压缩**:常用于写dp中的状态转移方程,降低时间复杂度
应用:最短的Hamilon路径(补充不漏恰好经过每一个点)
处理方法:朴素算法,也可以理解为暴力(其中利用状态压缩优化时间复杂度);
         基于二进制,每一个值的状态都有0和1两种,这两种状态分别表示是否经过;
**Lowbit运算**:lowbit(n)=n&(~n+1)=n&(-n);
应用:常用于树状数组。
**枚举**:可以理解为暴力,但在数据量大的情况下,也要有一些技巧。一般枚举和循环,递推,递归,DFS,BFS分不开,有时可能也会用到位运算。
多项式:循环,递推
指数:递归,位运算
排列:递归,next_permutation
组合:递归,剪枝
应用:费解的开关
处理方法:DFS枚举,同时也可加入位运算的处理
    遍历第一行的状态,从而固定当前状态,通过改变下一行的状态改变当前行,依次进行,最后通过最后一行的状态判断能否完成
**前缀和**:通过两个和做差的形式得到一个区间和,二维数组里也有类似的处理,线段树和树状数组里有此应用。
上面是昨天学习的大致内容,虽然都是学过的知识,但是看一些题的时候还是感到有些吃力,还是知识点不熟悉,处理方法不清晰,还有很大的提升空间。
昨晚上的比赛的漏洞,首先读题速度还是太慢,有思路之后代码处理太慢,有很多知识点漏洞,见到一个题后不能立即想出基本的处理方法,DFS还是不熟悉,题意读错是大忌。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值