新人第一次做题,求助!!!
查看原帖
新人第一次做题,求助!!!
1094191
loyo_Lin楼主2023/12/4 18:59

哪里错了?为什么5个测试点都过不了``` #include<stdio.h> struct stack{ int m; int value; double p; }; int main(){ int N,T; scanf("%d%d",&N,&T); struct stack a[N]; int i,s; double t; for(i=0;i<N;i++){ scanf("%d%d",&a[i].m,&a[i].value); a[i].p=a[i].value/a[i].m; } int k=0; struct stack ps; for(i=0;i<N-1;i++){ for(k=i+1;k<N;k++){ if(a[k].p>a[i].p){ ps=a[k]; a[k]=a[i]; a[i]=ps; } } } s=i=t=0; while(T-s>0){ s+=a[i].m; t+=a[i].value; i++; } if(s>T){ i--; k=s-T; t-=k*a[i].p; } printf("%.2f",t); return 0; }

2023/12/4 18:59
加载中...