题目描述
北理工睿信书院组织同学去到军事博物馆参观,要从良乡大学城北站上车坐地铁前往。同学们要途经n个地铁站,分别编号为 1, 2, 3 .. .n。编号为1的地铁站就是良乡大学城北站,编号为n的地铁站就是目的地的地铁站。
众所周知,北京地铁特别挤。定义拥挤程度为地铁上当前人数除以地铁最大载客量得到的值,这是一个 double 数(注意不是整数除法)。
现在给出地铁驶来第一站时车上的人数,以及地铁在第 1,2,3...n-1 站上车、下车的人数,请计算第 1,2,3...n-1 站列车关门后车上的拥挤程度,用百分数表示。
输入格式:
第一行是两个整数n(n<=10000)和m,分别表示地铁站的数量和地铁的最大载客量。
第二行是一个整数k,表示地铁驶来第一站时车上的人数。
接下来的n-1行,每行输入两个整数a和b,表示这一站上车的人数和下车的人数。
输出格式:共输出 n 行结果
前 n-1 行:每行一个浮点数,表示这一站列车关门后车上的拥挤程度。请保留三位小数。输入数据保证拥挤程度是一个在(0,1]之间的浮点数。
第 n 行:最舒服(拥挤程序最低的站)是哪些站。
输入样例:
4 10
10
1 2
4 8
5 4
输出样例:
0.900
0.500
0.600
2,
#include<stdio.h>
int main(void){
int n, i;
double station[10001], min = 1.1, temp, a, b, k, m;
for (i = 0; i < 10001; i++) {
station[i] = 2.0;
}
scanf("%d %d", &n, &m );
scanf("%d", &k);
for (i = 1; i < n; i++) {
scanf("%d %d", &a, &b);
k = k+a-b;
station[i] = k/m;
}
for(i = 1; i < n; i++){
printf("%.3f\n", station[i] );
}
for (i = 0; i < n; i++) {
if (station[i] < min) {
min = station[i];
}
}
for (i = 0; i < n; i++) {
if (station[i] == min) {
printf("%d,", i );
}
}
printf("\n");
}