蓝桥杯国赛子串2023动态规划,暴力

复制代码
#include <bits/stdc++.h>
using namespace std;
// string ss;
#define int long long
string s;
//该方法通过动态规划,找到2023字串,而2023等于202加3,202等于20+2,20等于2+0;
int f2()
{
  int dp[4]={0};
  //dp[0]代表2的数量,dp[1]代表20的数量d[2]代表202的数量,dp[3]等于2023的数量,考察对动态规划的理解
  for(int i=0;i<s.size();i++)
  {
    if(s[i]=='2')
    {
      //第一个二加加第二个二等于加上20字串的数量
      dp[0]++;
      dp[2]+=dp[1];
    }
    if(s[i]=='0') dp[1]+=dp[0];
    if(s[i]=='3') dp[3]+=dp[2];
  }
  return dp[3];
}
int f1()
{
  int cnt=0;
  for(int i=0;i<s.size();i++)
  {
    if(s[i]!='2') continue;
    for(int j=i+1;j<s.size();j++)
    {
      if(s[j]!='0') continue;
      for(int k=j+1;k<s.size();k++)
      {
        if(s[k]!='2') continue;
        for(int l=k+1;l<s.size();l++)
        {
          if(s[l]!='3') continue;
          cnt++;
        }
      }
    }
  }
  return cnt;
}
signed main()
{
//   for(int i=0;i<=2023;i++)
//   {
//     s+=to_string(i);
//   }
  for(int i=1;i<=2023;i++)
  {
    string ss=to_string(i);
    for(auto ch:ss)
    {
      if(ch=='2') s+='2';
      if(ch=='0') s+='0';
      if(ch=='3') s+='3';
    }
  }
  // cout<<f2();
  cout<<f1();
  // int cont=0;
  // // cout<<s;
  // for(int i=0;i<s.size();i++)
  // {
  //   if(s[i]!='2') continue;
  //   for(int j=i+1;j<s.size();j++)
  //   {
  //     if(s[j]!='0') continue;
  //     for(int k=j+1;k<s.size();k++)
  //     {
  //       if(s[k]!='2') continue;
  //       for(int l=k+1;l<s.size();l++)
  //       {
  //         if(s[l]!='3') continue;
  //         cont++;
  //       }
  //     }
  //   }
  // }
  // cout<<cont;
  return 0;
}
相关推荐
程序员-King.6 小时前
day69—动态规划—爬楼梯(LeetCode-70)
算法·动态规划
@蓝莓果粒茶8 小时前
LeetCode第350题_两个数组的交集II
c++·python·学习·算法·leetcode·职场和发展·c#
YuTaoShao9 小时前
【LeetCode 热题 100】51. N 皇后——回溯
java·算法·leetcode·职场和发展
花开富贵ii11 小时前
代码随想录算法训练营二十八天|动态规划part01
java·数据结构·算法·leetcode·动态规划
测试199811 小时前
cmake应用:集成gtest进行单元测试
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例
运维成长记14 小时前
关于linux运维 出现高频的模块认知
运维·职场和发展·云计算
jackzhuoa15 小时前
java小白闯关记第一天(两个数相加)
java·算法·蓝桥杯·期末
吃着火锅x唱着歌19 小时前
LeetCode 611.有效三角形的个数
算法·leetcode·职场和发展
爱喝矿泉水的猛男1 天前
非定长滑动窗口(持续更新)
算法·leetcode·职场和发展
是店小二呀2 天前
【动态规划-斐波那契数列模型】理解动态规划:斐波那契数列的递推模型
算法·动态规划·代理模式