A+B Problem
时间: 1ms 内存:10M
描述:
Calculate a+b
输入:
Two integer a,b (0<=a,b<=10)
输出:
Output a+b
示例输入:
1 2
示例输出:
3
提示:
参考答案(内存最优[0]):
#include<iostream>
using namespace std;
int main()
{
int a,b;
while(cin>>a>>b)
cout<<a+b<<endl;
return 0;
}
参考答案(时间最优[0]):
#include <stdio.h>
main()
{
int i,j,x,a,b,n[20],m[20];
double c,e,d[20];
while(scanf("%d%d",&a,&b)!=EOF)
{
if(!a&&!b)break;
for(i=0;i<a;i++)
scanf("%d%d",&n[i],&m[i]);
for(i=0;i<a;i++)
{
d[i]=(double)m[i]/(double)n[i];
}
c=0;
e=0;
for(x=0;x<a;x++)
{
for(i=j=0;i<a;i++)
{
if(d[j]<d[i])j=i;
}
if((e+n[j])>=b){i=(b-e);c+=d[j]*i;break;}
else if(d[j]==0)break;
else{e+=n[j];c+=m[j];}
d[j]=0;
}
printf("%.2f\n",c);
}
}
题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。