サイズの配列の左回転操作は、配列の要素のそれぞれを1単位左にシフトします。たとえば、配列[1,2,3,4,5]に対して2回の左回転が実行された場合、配列は[3,4,5,1,2]になります。このデータ構造の実装で私の間違いを指摘してください
整数と数値の配列が与えられている場合、配列上で左回転を実行します。更新された配列をスペースで区切られた整数の1行として出力します。
サンプル入力: 5、4
サンプル出力:5 1 2 3 4 私の出力は次のようになります。2 1 2 3 4
#!/bin/python3
import sys
def leftRotation(a, d):
#Main Logic here
length=len(a)
for j in range(0,d):
for i in range(0,length):
temp=a[0]
a[i]=a[i+1]
a[length-1]=temp
return a
return a
return a
if __name__ == "__main__":
n, d = input().strip().split(' ')
n, d = [int(n), int(d)]
a = list(map(int, input().strip().split(' ')))
result = leftRotation(a, d)
print (" ".join(map(str, result)))
エラー/出力はどのようになっていますか? –
私の出力は2 2 3 4 1 –
です。 'temp = a [0]'はループ内でハードコードされています。その論理を考えてみてください。 –