Codeforces Round 972 (Div. 2)

💡 原文中文,约1600字,阅读约需4分钟。
📝

内容提要

A. 构建只使用aeiou字母的字符串,以最小化回文子序列的数量。避免字母之间的间隙以减少回文数。 B2. 严格的老师:给定一行单元格,其中一些被老师占据,确定学生被老师抓住需要多长时间。考虑学生在最左边或最右边的单元格,或者在两个单元格之间的情况。 C. 懒惰的Narek:给定长度为m的n个字符串,连接它们并提取由单词“narek”的连续出现组成的子序列。通过从子字符串的不同起始和结束位置计算分数,分数等于子序列的长度减去“narek”字母的数量。使用动态规划找到最大分数。

🎯

关键要点

  • 构建只使用aeiou字母的字符串,以最小化回文子序列的数量。
  • 避免字母之间的间隙以减少回文数。
  • 考虑老师和学生在方格中的相对位置来确定抓住学生的时间。
  • 只需考虑老师在最左边、最右边或两个中间的情况。
  • 从多个字符串中提取连续的'narek'子序列以计算最大分数。
  • 使用动态规划来找到最大分数,考虑不同的开始和结束状态。
➡️

继续阅读