arr1是一个数组有3个元素第1个是arr2中的元素个数,第2个是无旋转的第3个是没有。输入。我想用户从给定的输入索引打印arry2的元素。第二个输入arry是输入数组包含数组元素。
arr1 =gets.strip.split(' ').map(&:to_i)
arr2 = gets.strip.split(' ').map(&:to_i)
q=arr1[2]
count= arr1[1]
count.times do
arr2=arr2.reverse.rotate.reverse
end
for i in 0..q-1 do
i = gets.strip.to_i
puts "#{arr2[i]}\n"
end
答案 0 :(得分:1)
rotate
接受一个参数,该参数是要旋转的元素数。这个数字可以是负数,可以在另一个方向旋转,所以
count.times do
arr2=arr2.reverse.rotate.reverse
end
在每次迭代时复制数组3次,可以替换为
arr2 = arr2.rotate(-count)