演算法之路之征服上海交大的oj 求和遊戲

2021-08-14 08:32:59 字數 1309 閱讀 3171

求和遊戲

description

石柱上有一排石頭鍵盤,每個鍵上有乙個整數。請你在鍵盤上選擇兩個鍵,使這兩個鍵及其之間的鍵上的數字和最大。如果這個最大的和不為正,則輸出「game over」。

input format

第1行:鍵的個數n。

第2..n+1行:鍵上的數字整數 ai

−100≤ai≤100

對於70%的資料,2≤n≤1,000

對於100%的資料,2≤n≤1,000,000

output format

一行,最大和或者」game over」。

sample input

5 3

-5 7

-2 8

sample output

sample input

3 -6

-9 -10

sample output

game over

此題我用了兩種辦法來解決它,不過兩種方法其實是一樣的,首先給出最初的版本

#includeusing namespace std;

int n;

int a[1000002];

int main()

intmax=-200,t1 = 0,t2 = 0;

max = a[1]+a[2];

int max1=-200,t11=0,t22=0;

max1 = a[n]+a[n-1];

for(int i=n;i>=3;i--)

t22++;

if(t11 > max1 && t22 > 1)

} for(int i=3;i<=n;i++)

t2++;

if(t1 > max && t2 > 1)

} max = max > max1 ? max:max1;

if(max > 0)

cout

cout<<"game over";

return

0;}

最後的版本:

#include

#include

#include

using

namespace

std;

int info[1000001];

int main()

(max <= 0)? printf("game over"):printf("%d",max);

return

0;}

整體思想,不好說,有興趣的朋友,帶乙個樣例進去就懂了

演算法之路之征服上海交大的oj 矩陣翻轉

矩陣翻轉 description 給定乙個正方形的整數矩陣,輸出將該矩陣按某一方向翻轉後的結果。input format 輸入第一行有乙個整數n,表示一共有n組資料 n不會為負數。之後有n組資料,對於每組資料 第一行有兩個整數a和b,分別表示正方形矩陣的邊長,以及翻轉的方向。當b 0時水平翻轉,當b...

演算法之路之征服上海交大的oj 水槍滅火

水槍滅火 description 以此題紀念上海 11 15 高樓火災遇害者 11月15日下午,上海靜安區膠州路728號的一幢28層民宅發生嚴重火災。消防部門接警後立刻出動25個消防中隊 百餘輛消防車投入滅火搶救行動,緊急疏散和救助了附近居民百餘人。火災導致58人遇難。此時大樓的所有樓層已經全部被烈...

演算法之路之征服上海交大的oj 二哥摘蘋果

二哥摘蘋果 題目描述 二哥是乙個懶於行動的人,他想在摘蘋果之前知道自己能摘到多少蘋果,如果實在太少 蘋果樹很茂盛,主要是由於身高原因 他寧可坐在樹下等蘋果自己掉下來砸到頭上。輸入格式 輸入共有兩行。第1行有3個整數,分別表示二哥的身高 凳子的高度和蘋果的個數n。第2行有n個整數,分別表示每個蘋果的高...