2 条题解
-
0
Guest
-
2
出题人题解
思路
根据情况模拟即可,注意保留 位小数。
code
#include<bits/stdc++.h> using namespace std; int t; void f(string s){ freopen((s+".in").c_str(),"r",stdin); freopen((s+".out").c_str(),"w",stdout); } double solve(int k,int d,int a){ if(k+a>=2*d) return 1.5*k+0.5*a; else if(k+a>d&&k+a<2*d) return 1.5*k+0.5*a-0.5*d; else return k+0.5*a-0.75*d; } int main(){ int k,d,a; cin>>t; while(t--){ cin>>k>>d>>a; double ans=solve(k,d,a); if(ans<-5) puts("-5.00"); else if(ans>20) puts("20.00"); else printf("%.2f\n",ans); } return 0; }
-
1
#include<bits/stdc++.h> using namespace std; float b[11]; int main() { float k,d,a,zushu; cin>>zushu; for(int i=1;i<=zushu;i++) { cin>>k>>d>>a; if(k+a>=2*d) { b[i]=1.5*k+0.5*a; } else if(k+a>d&&k+a<2*d) { b[i]=1.5*k+0.5*a-0.5*d; } else { b[i]=k+0.5*a-0.75*d; } if(b[i]>20) b[i]=20.00; if(b[i]<-5) b[i]=-5.00; } for(int j=1;j<=zushu;j++) { printf("%.2f\n",b[j]); } return 0; }
- 1
信息
- ID
- 794
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 8
- 标签
- (无)
- 递交数
- 49
- 已通过
- 7
- 上传者