好!我今天记录T1009(我发现我记录的都是我破防的题(思索))
srds今天向学长求助了(非常感谢!!!)and学到了一个新的知识点!!!
demical是四舍五入!
.3f是四舍六入!
题目和内心os如上
我的解答如下
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
double m = sc.nextInt();
int n = sc.nextInt();
if ( m==-1&&n == -1) {
break;
}
double s = 0;
double []c = new double[n];
double []d = new double[n];
for (int i = 0; i < n; i++) {
c[i] = sc.nextDouble();
d[i] = sc.nextDouble();
if(d[i]==0){
s+=c[i];
c[i]=0;
d[i]=1;
}
}
double y, z;
for (int a = 0; a < n - 1; a++) {
for (int e = a + 1; e < n; e++) {
if ((c[a]/d[a])<(c[e]/d[e])) {
y = c[a];
c[a] = c[e];
c[e] = y;
z = d[a];
d[a] = d[e];
d[e] = z;
}
}
}
for (int i = 0; i < n; i++) {
if (m >= d[i]) {
s += c[i];
m -= d[i];
} else {
s += c[i] /d[i] * m;
break;
}
}
System.out.printf("%.3f", s);
System.out.println();
}
}
}
那么今天就到这里啦!晚安!!