描述
給定包含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。
輸入第一行包含乙個整數n。
第二行包含n個整數a1, a2, ... an。
對於50%的資料,1 ≤ n ≤ 1000
對於100%的資料,1 ≤ n ≤ 100000, -1000000 ≤ ai ≤ 1000000
輸出乙個整數表示答案。
樣例輸入
6 3 -5 2 -2 3 0
樣例輸出
5
#include #include using namespace std;
int a[100001];
int main(int argc, char *argv)
system("pause");
return exit_success;
}
Offer收割 程式設計練習賽50 A 迴圈陣列
時間限制 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項的和都...
Offer收割 程式設計練習賽1
做了三題,題目都比較暴力。a題 題意 給你乙個三階的幻方,三階幻方指的是將1 9不重複的填入乙個3 3的矩陣當中,使得每一行 每一列和每一條對角線的和都是相同的。現在準備將乙個三階幻方中的一些陣列抹掉 0代替 交給你來進行還原,並且希望她能夠判斷出究竟是不是只有一組解。如果只有一組解,輸出該三階幻方...
Offer收割 程式設計練習賽7
比較容易想到是o n 2 的解決方案,遍歷n種刪除可能,每次遍歷o n 時間求總高度。前者優化比較困難,因而想辦法優化每次遍歷求高度的時間。由前往後遍歷,當刪除第i個時,先前的排版是連續的,從而通過計數器等累加方法可以求得已完整行的總高度presum,以及當前未完整行的w,h。include def...