随机刷题记录(就很迷)

博主分享了近期的算法刷题经历,主要涉及数位DP、图论和最短路径问题。通过HDU、POJ等平台进行练习,期间整理了SPFA模板、Floyd算法、线段树和主席树等知识,并参与了ACM竞赛。期间还回顾了逆序数和排序的相关概念,同时感叹课程繁多,影响刷题进度。
摘要由CSDN通过智能技术生成

除了平时划水练习,之前也自己刷了些题,感觉自己找题再补更适合我吧。就想弄个刷题记录。


9/30

HDU 2859 Phalanx
给定一个整数n,然后给出一个n*n的方阵,求方阵中最大的对称子方阵(对称指的是以右上角至左下角为对角线)

常规操作:dp,O(n^3)(其中空间复杂度可优化,讲解
1、规律:矩阵上搞dp,空间优化看情况
2、dp找规律例题+1

非常人的思路:哈希预处理,二分---->代码链接(哈希的骚操作,可以看看)


十一放假,各大oj平台都网址维护,交不了题。

10/1

HYSBZ 1026 windy数
windy定义了一种windy数。不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 windy想知道,在A和B之间,包括A和B,总共有多少个windy数?
==》求a到b闭区间内满足相邻两个数字之差大于等于2的数字个数

POJ - 3252 Round Numbers
规定一个数如果二进制中0的个数大于等于1的个数,则这个数称为“整数”,问闭区间a,b中有多少个整数

经典的数位dp,入门题:HDU 2089 不要62
回顾了一下数位dp的入门博客:数位dp入门

第一题关键变量:dp[i][j]表示第i位上数字为j的结果,pos表示位数,pre表示上一位数,lead表示是否有前导0,limit表示数位上界变量

ll dfs(int pos,int pre,bool lead,bool limit)

还是习惯dfs写法,思路是顺序的,dp写法容易漏情况。
第二题不多讲解,整理了一篇博客:链接


10/2

十一放假感觉和没放似的,除了昨天,平时工作日都基本满课,这就有点无语了,走acm这条路我也没指望有假期,但这课有点多,大学搞得和高中一样。

今天又做了一道数位dp的中等题:HDU-3709 Balanced Number
多变量,更加趋于dfs的做法,已整理。

复习数位dp之后,这个数论先放一放,得好好补补图论。最近先补出图论的一些模板(以前没整理,边补边看题吧) 链接


10/3
更新了SPFA模板,有用邻接矩阵的,但不太实用(数据大时就用不了),还是用链式前向星方便。
只做了一道:POJ 3268 Silver Cow Party(有向图多点到star和star到多点问题),本来还想补一道UPC一道题,但有点难懂。


10/4
事有点多,又看了一道难题,半天没理解,浪费了时间。


10/5

POJ - 3660 Cow Contest(Floyd+闭包传递) — 简单题
一道简单题,因为数据在100以下,可以用O(n^3)的Floyd,已整理。
集合论——关系的自反、对称和传递闭包,反自反,反对称-----离散数学第一章的知识。

HDU - 4370 0 or 1(思维+最短路) — 中等题
这题很有意思,将图论的出入度用矩阵中的01关系表示,很考验基础知识以及其联系。强烈推荐,好题 —题解

这里的SPFA用矩阵形式,结合题意,已整理。题解2


10/6

次短路模板,三种方法,整理中
引申第K短路。
没什么好说的,次短路本来就属于中等题,也没找到什么其他例题。


10/7

之前也复习了spfa,想来想去还是整理了一道判断负环的题,裸题,难度中等偏下 , 题解

图论不像数论,同样的知识储备下,数论重在推断,图论重在联想(直觉),并且可以靠刷题找出感觉,但中间断了一段时间,很容易忘记流程。


10/8
又是满课加满作业的一天,感觉学校有些课的课时有点多,今天听说 教我们Python的老师人在美国,回不了国,还要换课,加上一些意义不明的实验课,这下周末两天早上也有课了。诶~~

今天又是一道思维题,难度中等偏上,HDU - 4725 The Shortest Path in Nya Graph
最短路+增点建图
感觉有点像之前我在并查集中涉及到的一道难度中等偏上的题:食物链。那题建两种并查集无法表示关系,需要三种并查集,而这题如果枚举加入所有边,至少1e10,一定T,需要将题目中“层”这个概念转换理解“虚点”,因为都用一(实)点转换另一(实)点的功效,说白了,就是再增加n个点,后面n个点做过渡的,所以是“虚点”。
已整理。链接


10/9

之前我对逆序数的概念还活在线段树和归并排序中,今天看了一下逆序数的其他类型题目,感慨还是刷题太少,记录一下定理和题型,下次再遇到整理。链接(缺一些难题的代码)
本来再想整理个排序,但不会用到,算了。
7天最短路,之后7天线段树。


10/10
最近的upc大部分是寒假cf上的一些题,选的题目都不难,但经常卡时间,是不错的题,但整理的话,也没什么知识点可讲。写了个即时题解
顺便把暑假的草稿也发出来了。


10/11

下午一场upc,晚上一场ldu自测,都是数论题,写了两篇即时题解,两道位运算符两道dp,感觉晚上那场状态不是很好,数论还是不行啊。

等题解吧


10/12到10/18
最近在整理整理题解,不算自己刷题。

蓝桥杯比去年难

感冒有点难受。


10/19
回归状态,最近在总结线段树,先做了线段树区间合并的三道题


10/20——10/28

中间没记录,但写了博客,最近在看主席树,静态和动态的知识点完全不是同一个,对初学者不是很友好,因为要从动态主席树的基础开始学,数组数组,树套树。
所以我又开了树状数组的一些题。

CCPC打星,做出2题,不在状态,4题才拿铜。关于CCPC,我们acm一直都有一个梗,曰:CCPC怎么获奖?答:ppt。今年出了一点事情,有点变化了,答曰:王老师辛苦了。呵呵,只能说ccpc任重道远,但是打铁还需自身硬。

蓝桥杯,B组省前30,下面打国赛,个人还是觉得自己太弱了。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值