1

位置の北南の距離を表すの整数の配列を作成しようとしています - 配列の要素をジグザグの順序で表示する必要があります。

つまり、最大のメンバーが最初に表示され、最小のメンバーが 2 番目に表示され、残りの要素は、最大のメンバーから減少する大きなメンバーと、最小のメンバーから増加する小さなメンバーとの間で交互に表示されます。

つまり、配列 [1, 3, 6, 9, -3] は [9, -3, 6, 1, 3] になります。

wiggleArrangeArrayn 個の整数の整数配列を 1 つの引数として受け取るfunction を完成させようとしています。

必要な入力形式、制約、および出力形式 ここに画像の説明を入力

なんて言っていいのかわからない

「配列内の項目が配列内の他の項目よりも大きい場合は、最初に表示します。」

「項目が配列内の他の項目よりも小さい場合は、2 番目に表示します。」

「次に大きい数字と次に小さい数字を交互に」

def wiggleArrangeArray(intArr):
    for i in intArr
        #if i > other items in intArr
        #display that i at index value 0
        #if i < other items in intArr
        #display that i at index value 1
        #if i < i at index value 0 and > other items in intArr, display it next
        #if i > i at index value 1 and < other items in intArr, display it next
        #repeat last two lines for continuing values

可能であれば助けてください。これはC++のソリューションへのリンクですが、Pythonで必要です。ありがとう。

編集:関数は次のテストで動作する必要があります:

f = open(os.environ["OUTPUT_PATH"], "w")

_intArr_cnt = int(raw_input())
_intArr_i=0
_intARR = []
while _intArr_i < _intArr_cnt:
    _intArr_item = int(raw_input());
    _intArr.append(_intArr_item)
    _intArr_i+=1

res = wiggleArrangeArray(_intArr);
for res_cur in res:
    f.write( str(res_cur) + "\n" )

f.close()
4

2 に答える 2