1 条题解
-
0
C :
#include<stdio.h> int main() { int d,max; int rate[100]; double m=100,flag=0; int i,l,k; scanf("%d",&d); for(i=0;i<d;i++) { scanf("%d",&rate[i]); } for(l=0;l<=d;l++) { max=rate[l]; if(flag==0) { for(k=l;k<d;k++) { if(max<rate[k]&&k!=d-1) { max=rate[k]; } else if(max>rate[k]) { l=k-1; flag=1; m=m*max/100; break; } } } else { for(k=l;k<d;k++) { if(max>rate[k]) { max=rate[k]; } else if(max<rate[k]||k==d-1) { l=k-1; flag=0; m=m/max*100; break; } } } } printf("%.2f\n",m); return 0; }
C++ :
#include<iostream> #include<cstdio> #include<cstring> #include<cstdlib> #include<algorithm> using namespace std; int main(){ unsigned long long n; double tot=100; bool b; cin>>n; int a[100000]; for(int i=1;i<=n;i++) cin>>a[i]; for(int i=1;i<n;i++){ if(!b&&a[i]>a[i+1]){ b=1; tot*=a[i]; } if(b&&a[i]<a[i+1]){ b=0; tot/=a[i]; } } if(b) tot/=a[n]; printf("%.2f",tot); return 0; }
Pascal :
var n,i,a,b:longint;x:real; begin readln(n); x:=100; read(a);b:=a; x:=x*b/a; for i:=2 to n do begin read(a); if a<b then begin x:=x*b/a;end; b:=a; end; writeln(x:0:2); end.
- 1
信息
- ID
- 710
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者