欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF618A.Slime Combining
Slime Combining
题目描述
你的朋友最近送给你一些史莱姆作为生日礼物。你一共有 个史莱姆,所有史莱姆的初始价值都是 。
你准备用这些史莱姆玩一个游戏。最开始,你会把一个史莱姆单独放在一排。然后,你会依次把剩下的 个史莱姆一个一个地加入这排史莱姆中。每次加入时,你会把新史莱姆放在所有已经放置的史莱姆的右侧。接下来,只要最右侧的两个史莱姆值相同,设为 ,你就把这两个史莱姆合成一个价值为 的史莱姆。
你想知道在所有 个史莱姆都放入后,这一排中最终剩下的史莱姆的价值分别是多少。请从左到右输出这些史莱姆的价值。
输入格式
输入的第一行包含一个整数 ()。
输出格式
输出一行共 个整数, 为最终这一排中剩下的史莱姆数量。第 个数字表示从左到右排列的第 个史莱姆的价值。
说明/提示
在第一个样例中,只有一个史莱姆,价值为 。最终排内仅有一个价值为 的史莱姆。
在第二个样例中,操作流程如下:
最开始放置一个史莱姆,排为 1。
然后加入一个史莱姆,此时排为 1 1。由于最右两个史莱姆价值相同,我们把它们合并为一个价值为 的史莱姆。最终排内为 2。
在第三个样例中,放入前两个史莱姆后,排为 2。再加入一个史莱姆,排变为 2 1。
在最后一个样例中,步骤如下:
- 1
- 2
- 2 1
- 3
- 3 1
- 3 2
- 3 2 1
- 4
由 ChatGPT 5 翻译
样例
1
1
2
2
3
2 1
8
4
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |