我有一个数组,比如A1=[5,3,2,1,3],还有一个二维数组,叫做A2 = [[0,1],[1,3]]。我想要的是通过在A1中每个数组中提到的索引来反转A2的子数组。
就像这里,
在A2的第一次操作,即[0,1]中,它将A1从A1[0] to A1[1] so A1 becomes = [3,5,2,1,3].逆转过来。
在A2的第二次运算,即[1,3]中,它将A1从A1[1] to A1[3] so A1 becomes = [3,1,2,5,3].逆转过来。
所以ANS is [3,1,2,5,3]
谁能告诉我怎么做这个问题,因为我是初学者编码。?我在蟒蛇工作。
import math
import os
import random
import re
import sys
#function
def reversubarray(arr,start,end):
def performOperations(arr, operations):
answerarray = arr
x = oprations.size();
for i in range(x):
answerarray = reverseSubarray(arr,operations[x][0],operations[x][1])
return answerarray;
if __name__ == '__main__':
fptr = open(os.environ['OUTPUT_PATH'], 'w')
arr_count = int(input().strip())
arr = []
for _ in range(arr_count):
arr_item = int(input().strip())
arr.append(arr_item)
operations_rows = int(input().strip())
operations_columns = int(input().strip())
operations = []
for _ in range(operations_rows):
operations.append(list(map(int, input().rstrip().split())))
result = performOperations(arr, operations)
fptr.write('\n'.join(map(str, result)))
fptr.write('\n')
fptr.close()我已经想出了蛮力方法,但是我如何在这里编写reverseSubArray函数呢?
有谁能分享这个方法吗?
https://stackoverflow.com/questions/71220456
复制相似问题