欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF2144A.Cut the Array
Cut the Array
题目描述
给定一个包含 个非负整数的数组 。
你需要将其切分为三个非空部分:前缀、中间部分和后缀。具体来说,你需要选择两个整数 和 ,满足 ,得到三部分:
- 前缀部分包含第 个到第 个元素(即 );
- 中间部分包含第 个到第 个元素(即 );
- 后缀部分包含第 个到第 个元素(即 )。
令 分别表示上述三部分元素和对 取模的余数,即:
- ;
- ;
- 。
你的任务是找到一组 和 ,使得 要么全都不同,要么全都相等。
输入格式
第一行为一个整数 (),表示测试用例的数量。
每个测试用例包含两行:
- 第一行一个整数 ();
- 第二行为 个整数 ()。
输出格式
对于每个测试用例,如果存在一组合适的整数 和 (),输出这两个数(如果有多组解,输出任意一组即可)。如果不存在合适的切割方法,则输出两个 。
说明/提示
参考样例中的说明:
- 在第一个样例中,数组被分为 、、,;
- 在第二个样例中,没有满足条件的切割方法;
- 在第三个样例中,数组被分为 、、,,,;
- 在第四个样例中,数组被分为 、、,,,。
由 ChatGPT 5 翻译
样例
4
6
1 2 3 4 5 6
4
1 3 3 7
3
2 1 0
5
7 2 6 2 4
3 5
0 0
1 2
2 4
在线编程 IDE
建议全屏模式获得最佳体验
键盘快捷键
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |
第 1 行,第 1 列
0 字符
-
最近自测结果
暂未运行
最近递交结果
暂无递交记录