资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
从前,有一只吃包子很厉害的猴子,它可以吃无数个包子,但是,它吃不同的包子速度也不同;肉包每秒钟吃x个;韭菜包每秒钟吃y个;没有馅的包子每秒钟吃z个;现在有x1个肉包,y1个韭菜包,z1个没有馅的包子;问:猴子吃完这些包子要多久?结果保留p位小数。
输入格式
输入1行,包含7个整数,分别表示吃不同包子的速度和不同包子的个数和保留的位数。
输出格式
输出一行,包含1个实数,表示吃完所有包子的时间。
样例输入
4 3 2 20 30 15 2
样例输出
22.50
数据规模和约定
0<x<100;0<y<100;0<z<100;0<x1<=1000000;0<y1<=10000000;0<z1<=10000000;0<p<=1000
解题思路:
1.用Java数组解;2.注意小数点位数的处理
代码如下(Java):
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
double[] arr = new double[6];
for (int i = 0; i < arr.length; i++) {
arr[i] = sc.nextInt();
}
int n = sc.nextInt();//输入保留位数
double x = arr[3] / arr[0];
double y = arr[4] / arr[1];
double z = arr[5] / arr[2];
double ans = x + y + z;//结果为三次之和
System.out.printf("%." + n + "f", ans);
}
}
代码如下(C):
#include<stdio.h>
int main(){
int i,n;
double x,y,z,a[6],ans;
for(i=0;i<6;i++)
{
scanf("%lf",&a[i]);
}
scanf("%d",&n);//n为保留位数
x=a[3]/a[0];
y=a[4]/a[1];
z=a[5]/a[2];
ans=x+y+z;//结果为三次之和
printf("%.*lf",n,ans);
return 0;
}