蓝桥杯2023年第十四届省赛真题-更小的数
//区间DP
#include <iostream>
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=5e3+10;
int f[N][N];
void solve(){string s;cin>>s;int ans=0;for(int len=2;len<=s.size();len++){for(int l=0;l+len-1<s.size();l++){int r=l+len-1;if(s[l]>s[r])f[l][r]=1;else if(s[l]==s[r]){f[l][r]=f[l+1][r-1];}ans+=f[l][r];}}cout<<ans;
}signed main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);int t;t=1;//cin>>t;while(t--)solve();}