九度OJ 1435:迷瘴
生活随笔
收集整理的這篇文章主要介紹了
九度OJ 1435:迷瘴
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述: 輸入: 輸出: 樣例輸入: 3
1 100 10
100
2 100 24
20 30
3 100 24
20 20 30 樣例輸出: 0 0.00
100 0.20
300 0.23 #include <cstdio>
#include <algorithm>
#include <math.h>
using namespace std;
int main(){int c;scanf("%d",&c);int n,V,W;int buf[102];while(c--){scanf("%d%d%d",&n,&V,&W);int cnt,sum,num,temp;cnt = sum = num = 0;for(int i = 0;i < n;i++){scanf("%d",&temp);if(temp <= W){sum += temp;num++;}else buf[cnt++] = temp;}//如果沒有一個藥水是小于W的,則無解if(num == 0){printf("0 0.00\n");}else{double wNow = (double)sum/num;if(cnt != 0){sort(buf,buf+cnt);for(int i = 0;i < cnt;i++){double t = ((double)sum + (double)buf[i])/(num + 1);if(t <= W){wNow = t;sum += buf[i];num++;}else break;}}int ans = floor(wNow + 0.5);printf("%d %.2f\n",num*V,(double)ans/100);}}
}
通過懸崖的yifenfei,又面臨著幽谷的考驗——
幽谷周圍瘴氣彌漫,靜的可怕,隱約可見地上堆滿了骷髏。由于此處長年不見天日,導致空氣中布滿了毒素,一旦吸入體內,便會全身潰爛而死。
幸好yifenfei早有防備,提前備好了解藥材料(各種濃度的萬能藥水)。現在只需按照配置成不同比例的濃度。
現已知yifenfei隨身攜帶有n種濃度的萬能藥水,體積V都相同,濃度則分別為Pi%。并且知道,針對當時幽谷的瘴氣情況,只需選擇部分或者全部的萬能藥水,然后配置出濃度不大于 W%的藥水即可解毒。
現在的問題是:如何配置此藥,能得到最大體積的當前可用的解藥呢?
特別說明:由于幽谷內設備的限制,只允許把一種已有的藥全部混入另一種之中(即:不能出現對一種藥只取它的一部分這樣的操作)。
輸入數據的第一行是一個整數C,表示測試數據的組數;
每組測試數據包含2行,首先一行給出三個正整數n,V,W(1<=n,V,W<=100);
接著一行是n個整數,表示n種藥水的濃度Pi%(1<=Pi<=100)。
對于每組測試數據,請輸出一個整數和一個浮點數;
其中整數表示解藥的最大體積,浮點數表示解藥的濃度(四舍五入保留2位小數);
如果不能配出滿足要求的的解藥,則請輸出0 0.00。
?
轉載于:https://www.cnblogs.com/starryxsky/p/7095517.html
總結
以上是生活随笔為你收集整理的九度OJ 1435:迷瘴的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: bzoj1612 Usaco08 Jan
- 下一篇: mysql创建全文索引