当前位置: 首页 > news >正文

【DP】第十四届蓝桥杯省赛C++ B组《接龙数列》(C++)

【题目描述】

对于一个长度为 K 的整数数列:A1,A2,...,AK,我们称之为接龙数列当且仅当 A_{i} 的首位数字恰好等于 A_{i-1} 的末位数字 (2≤i≤K)。

例如 12,23,35,56,61,11 是接龙数列;12,23,34,56 不是接龙数列,因为 56 的首位数字不等于 34 的末位数字。

所有长度为 1 的整数数列都是接龙数列。

现在给定一个长度为 N 的数列 A1,A2,...,AN,请你计算最少从中删除多少个数,可以使剩下的序列是接龙序列?

【输入格式】

第一行包含一个整数 N。

第二行包含 N 个整数 A1,A2,...,AN。

【输出格式】

一个整数代表答案。

【数据范围】

对于 20% 的数据,1≤N≤20。
对于 50% 的数据,1≤N≤10000。
对于 100% 的数据,1≤N≤10的5次方,1≤Ai≤10的9次方。所有 Ai 保证不包含前导 0。

【输入样例】

5
11 121 22 12 2023

【输出样例】

1

【样例解释】

删除 22,剩余 11,121,12,2023 是接龙数列。

【代码】

#include <iostream>
#include <cstring>
#include <algorithm>using namespace std;const int N = 100010;int n;
int g[10];int main()
{scanf("%d", &n);int res = 0;char num[20];for (int i = 0; i < n; i ++ ){scanf("%s", num);int l = num[0] - '0', r = num[strlen(num) - 1] - '0';int f = max(1, g[l] + 1);g[r] = max(g[r], f);res = max(res, f);}printf("%d\n", n - res);return 0;
}
http://www.lryc.cn/news/322441.html

相关文章:

  • 文件包含漏洞(input、filter、zip)
  • 使用iconv解决Linux/Ubuntu/Debian中gb2312中文文档乱码问题
  • 图论中的最小生成树:Kruskal与Prim算法深入解析
  • uniapp 之 实现商品详情的锚点跳转(类似京东商品详情-点击顶部按钮跳转的对应的页面的内容区域)
  • PPT好看配色
  • 微信小程序执行环境(微信端)与浏览器环境有何不同
  • Java小项目--满汉楼
  • 微信怎样群发更高效?
  • javaSwing愤怒的小鸟
  • 10 开源鸿蒙中芯片与开发板对应的源码(硬件相关的部分)
  • qt5-入门-标签页部件QTabWidget-1
  • GOPS全球运维大会2024深圳站亮点抢先看!
  • 给wordpress添加自定义字段的分类筛选功能
  • Android 系统的启动过程
  • jenkins配置源码管理的git地址时,怎么使用不了 credential凭证信息
  • Emotion Prompt-LLM能够理解并能通过情感刺激得以增强
  • 流畅的 Python 第二版(GPT 重译)(十三)
  • C/C++炸弹人游戏
  • ③【Docker】Docker部署Nginx
  • Elasticsearch:使用 OpenAI、LangChain 和 Streamlit 的基于 LLM 的 PDF 摘要器和 Q/A 应用程序
  • Linux课程____进程管理
  • 算法设计与分析-动态规划算法的应用——沐雨先生
  • Flutter-仿淘宝京东录音识别图标效果
  • 雷池 WAF 社区版:下一代 Web 应用防火墙的革新
  • 音视频实战---音视频解码
  • MyBatisPlus 之四:MP 的乐观锁和逻辑删除、分组、排序、链式的实现步骤
  • node.js常用的命令
  • Python从入门到精通秘籍十
  • Android:adb命令
  • Github基本功能和使用技巧