B 迴圈陣列 HihoCoder 1704

2021-08-17 22:08:33 字數 1065 閱讀 6099

hihocoder - 1704 

給定包含n個整數的陣列a1, a2, ... an,你可以選擇任意乙個ai,將ai旋轉到陣列第一項,即將陣列變成:

ai, ai+1, ai+2, ... an, a1, a2, ..., ai-1

現在小hi希望旋轉之後的陣列滿足:

對於任意k(1 ≤ i ≤ n),前k項的和都是正數。  

例如對於a=[3, -5, 2, -2, 3, 0],旋轉成[3, 0, 3, -5, 2, -2]滿足條件。  

請你輸出i,代表將ai旋轉到第一項滿足條件。  

如果有多解,你可以輸出任意乙個i。如果無解輸出-1。

input

第一行包含乙個整數n。  

第二行包含n個整數a1, a2, ... an。  

對於50%的資料,1 ≤ n ≤ 1000  

對於100%的資料,1 ≤ n ≤ 100000, -1000000 ≤ ai ≤ 1000000

output

乙個整數表示答案。

sample input

6  

3 -5 2 -2 3 0

sample output
5
首先,0不是整數。然後,當這n個數相加小於1,則無解,因為不管怎麼排序,最終結果還是全部數相加》0才有解。最後,兩個迴圈暴力判斷是否<0;

**:

#include

#include

#include

using namespace std;

int main()

if(sum<=0)

else               //sum>0

for(int j=1; j

其它樣列:

//5

//-9 -5 7 2 6

//1

//0

B 迴圈陣列

時間限制 10000ms 單點時限 1000ms 記憶體限制 256mb 給定包含n個整數的陣列a1,a2,an,你可以選擇任意乙個ai,將ai旋轉到陣列第一項,即將陣列變成 ai,ai 1,ai 2,an,a1,a2,ai 1 現在小hi希望旋轉之後的陣列滿足 對於任意k 1 i n 前k項的和都...

陣列與迴圈問題1

題1 以下 的輸出結果是什麼?中國著名金融企業j銀行2008年面試題 cpp include include using namespace std int main return 0 include include using namespace std int main return 0 a.1...

B1008 陣列元素迴圈右移問題

time limit 200ms memory limit 65 536kb 難度指數 題目描述 乙個陣列a中有n n 0 個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向右移m m 0 個位置,即將a中的資料由 輸入格式 每個格式輸入包含乙個測試用例,第一行輸入n 1 n 100 m m 0...