Educational Codeforces Round 156 (Rated for Div. 2)

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

内容提要

A. 将一个数字分成三个不是3的倍数的不同数字。B. 在笛卡尔坐标系中,找到从(0, 0)到目标点的最小光照范围。C. 通过删除字符使字符串始终按字典顺序排列。

🎯

关键要点

  • 将一个数拆成三个不同的数,且都不是3的倍数。
  • 最小拆法为1, 2, x,且x需大于等于4且不是3的倍数。
  • 若x为3的倍数,则拆法为1, 4, x。
  • 在笛卡尔坐标系中,需找到从(0, 0)到目标点的最小灯光范围。
  • 有两种情况:只用一盏灯或同时用两盏灯。
  • 通过计算距离来确定最小灯光范围。
  • 通过删除字符使字符串保持字典序最小,最终得到一个结果字符串。
  • 使用单调栈来模拟保证字符串前缀非递减。
➡️

继续阅读