轮转数组:ACM 模式刷题
按标准输入读取测试数据,输出结果后可在 CodeACM 在线运行和提交。
题目描述
给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。
输入格式
第一行输入一个整数 n,表示数组长度。
第二行输入 n 个整数 nums[i]。
第三行输入一个非负整数 k,表示向右轮转的步数。
输出格式
输出轮转后的 n 个整数,相邻数字以空格分隔。
数据范围
- 1 ≤ n ≤ 10⁵
- 0 ≤ k ≤ 10⁹
- −2³¹ ≤ nums[i] ≤ 2³¹ − 1
公开样例
样例 1
输入
7 1 2 3 4 5 6 7 3
输出
5 6 7 1 2 3 4
向右轮转 1 步:[7, 1, 2, 3, 4, 5, 6]
向右轮转 2 步:[6, 7, 1, 2, 3, 4, 5]
向右轮转 3 步:[5, 6, 7, 1, 2, 3, 4]
样例 2
输入
4 -1 -100 3 99 2
输出
3 99 -1 -100
向右轮转 1 步:[99, -1, -100, 3]
向右轮转 2 步:[3, 99, -1, -100]
练习建议
先根据输入输出格式写出可运行程序,再用公开样例检查结果;遇到边界情况时,补充自测用例后提交。