算法
.
动态规划
1 | 有一排深渊法师,他们的护盾值用数组 a 表示; |
1 | dp[i]=min(dp[i-1]+a[i],dp[i-2]+x) if 能使用高天之歌 else dp[i-1]+a[i] |
找规律题目
找规律后拼接
构建长度为n的字符串
1 | A希望你构造一个长度为n的数组,满足以下条件: |
1 | 根据题目信息: |
拼接mhy字符串
1 | 如果不能定义:字符串的“权重”是字符串中出现的字符种类数量,比如 mmm 权重为1,mmh 为 2,mhy 为 3 |
1 | 1. 找规律,发现权重3字符串后只能接权重2或权重3的字符串,不能跟权重1;所以如果x,z>0,y=0这种情况无解 |
找规律后计算
1 | A拿到了3元无限长字符串{1,2,3;4,5,6;7,8,9;....} |
1 | 1. 求l到r字符之间有几个逗号分号——》r前逗号分号-l前逗号分号 |
审题题
交换字母使字典序尽可能大
1 | A拿到一个仅有小写字母组成的字符串,她准备进行恰好一次操作:交换连个相邻字母,在操作结束后使字符串的字典序尽可能大。 |
知识点:
字典序,就是按照字典排列顺序,英文字母按下面方式排列:
1
2ABCDEFG HIJKLMN OPQRST UVWXYZ
abcdefg hijklmn opqrst uvwxyz题目说的是恰好一次操作!!!!就算交换之后会让原来字符串字典序减小也需要进行操作!
寻找用例
1 | 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 |
找正例
1
2输入:coins = [1, 2, 5], amount = 11
输出:3找负例
1
2输入:coins = [2], amount = 3
输出:-1找边界条件
1
2输入:coins = [1], amount = 0
输出:0