“逢低吸纳”是炒股的一条成功秘诀。如果你想成为一个成功的投资者,就要遵守这条秘诀:
"逢低吸纳,越低越买"
这句话的意思是:每次你购买股票时的股价一定要比你上次购买时的股价低.按照这个规则购买股票的次数越多越好,看看你最多能按这个规则买几次。
给定连续的N天中每天的股价。你可以在任何一天购买一次股票,但是购买时的股价一定要比你上次购买时的股价低。写一个程序,求出最多能买几次股票。
以下面这个表为例, 某几天的股价是:
天数 1 2 3 4 5 6 7 8 9 10 11 12
股价 68 69 54 64 68 64 70 67 78 62 98 87
这个例子中, 聪明的投资者(按上面的定义),如果每次买股票时的股价都比上一次买时低,那么他最多能买4次股票。一种买法如下(可能有其他的买法):
天数 2 5 6 10
股价 69 68 64 62
#include <stdio.h> #define MaxDays 20 void getMaxDays(int*a,int n) { int l[MaxDays]; int t[MaxDays]; int day=0; int time=0; for(int i=0;i<n;i++) { l[i]=1; t[i]=1; for(int j=0;j<i;j++) { if(a[i]<a[j]&&l[i]<=l[j]) { l[i]=l[j]+1; } if(a[i]>a[j]&&t[i]<=t[j]) { t[i]=t[j]+1; } } if(day<l[i]) { day=l[i]; } if(time<t[i]) { time=t[i]; } } printf("%d\n",day); printf("%d\n",time); } void main() { int n; scanf("%d",&n); int a[MaxDays]; for(int i=0;i<n;i++) { scanf("%d",&a[i]); } getMaxDays(a,n); }