DP 样例1 5 4 2 3 1 5 输出 1 序列 是3个数字的波浪折线 dp[ i ]表示以 i 结尾的子序列个数 遍历每个位置 i 记录可以作为中心点的个数k j从i-1遍历之前处理过的答案 如果a[ j ] < a [ i ]那么他可以作为 i 的一个中点k++ 如果a[ j ] > a[ i ]那么以 j 结尾的子序列都可以接上k和 i 作为一个新子序列 并且j k i也是一个新子序
G - 穗乃果的考试 先对方块求一个二维前缀和,这样就相当于枚举前缀和中每一个小块的和了。 #include<stdio.h>#include<bits/stdc++.h>using namespace std;typedef long long ll;const int mod=998244353;char s[2200][2200];ll a[2200][2200],sum