1. 程式人生 > >nyoj 739 笨蛋的難題四

nyoj 739 笨蛋的難題四

code int 規律 != pop 記錄 table 求和 ng-

笨蛋難題四

時間限制:1000 ms | 內存限制:65535 KB 難度:3
描寫敘述

這些日子笨蛋一直研究股票,經過調研。最終發現xxx公司股票規律,更可喜的是 笨蛋推算出這家公司每天的股價,為了防止別人發現他的秘密。他決定對於這家公司的 股票最多買一次,如今笨蛋已經將股票價格列了出來。(這已經不是笨蛋的難題了,他已經解決 呵 呵)。僅僅想難為難為你呀。從股票價格表上,你能算出笨蛋的每股股票最多能賺多少錢嗎?

輸入
第一行一個n,表示n天(小於100000)
第二行 給出n天每股的價格
輸出
每股最多賺多少錢
例子輸入
4
947 267 359 771
7
669 735 322 794 397 565 181  
例子輸出
504
472
 
#include<stdio.h>
int main()
{
  int day;
  while(scanf("%d",&day)!=EOF)
  {
	  int max=0,s,sum=0,x,y;
	  scanf("%d",&x);
	  day--;
	  while(day--)
	  {
         scanf("%d",&y);
		 s=y-x;//記錄後一項與前一項的差
		 sum<0?sum=s:sum+=s;//當sum小於0時 把s的值從新賦值給sum不然的話繼續求和。
		 max<sum?max=sum:sum=sum;//比較  把最大項的值賦值給max
	     x=y;//為下次循環做準備
	  }
	  printf("%d\n",max);//輸出最大項,即每股最多轉的錢數
  }
	return 0;
}        


nyoj 739 笨蛋的難題四