ZROI day1

\[ZROI day1\]

\[Grid\]

  • 题目描述
    给定一个矩阵,小写字母,求一条路径使得从\((1,1) -> (n,m)\),字典序最小,并且每次只能向右或者向下。

  • 题解

先考虑如果没有重复字母,可以再\(dfs\)的过程中不断贪心得到路径。

如果有重复的话,考虑枚举每条对角线,求出到这条对角线的最小字典序路径和所有可能的结束位置。

复杂度\(O(n \times m)\)

还有一种就是考虑预处理出每一步最接近答案的最远点,进行bfs即可。

ps:忘记\(unique\),考试的时候T1调了一个半小时多。。。

\[water\]

  • 题目描述

  • 题解
    裸状压dp题。

ps:这题打挂了就20分

\[pal\]

  • 题目描述
    给定一个序列,每次可以合并相邻的数字,合并之后是一个新数等于原数之和,求最少合并次数使得变成一个回文序列。

  • 题解
    指针扫描即可。

证明:
给定序列:1 5 3 2 1
考虑分治这个过程,第一个和最后一个相等,那么这个东西就永远不能动,否则会增加次数,如果相等把指针l ++,r --,如果不一样找到小的往前合并,直到相等,类似解子问题的思路。

ps:一眼+5min证明

\[LIS\]

  • 题目描述
    按照一定规则构造序列,求构造出的所有序列中LIS长度和数目。

  • ps:先来ps一下,想出来了没时间写,中途去干了某些事情QAQ

  • 题解
    长度好说,贪心构造就行。
    怎么算方案数?
    经典计数问题,设\(f_i\)表示以\(i\)结尾的LIS长度,\(g_i\)表示\(f_i\)的方案数
    略写转移即可,虽然比较难写。

猜你喜欢

转载自www.cnblogs.com/akoasm/p/10126491.html