sicily--1097. LED Modding
来源:互联网 发布:2016中国经济发展数据 编辑:程序博客网 时间:2024/05/29 11:08
1.还是比较水,用优先级队列模拟即可
2.个人觉得应该注意的就是当“USB <= LED_V”时,输出的情况应该是“---”,因为题目说,可以小于规定的电流(因为后面会慢慢升,我也不记得为什么了),但是不能超过;我就是在这里WA了一次,一开始觉得如果电源电压小于所需的电压的话应该是“IMPOSSIBLE”才对,结果抱着试一试的心态去改了一下,就过了
#include<iostream>#include<vector>#include<queue>#include<string>#include<iomanip>using namespace std;struct Node{string name;int interval;};struct cmp{bool operator()(const Node &n1, const Node &n2){return n1.interval > n2.interval;//小顶堆}};int main(){int USB;//电源电压while(cin >> USB){double LED_V;//LED需要的电压cin >> LED_V;double LED_mA;//LED需要的电流cin >> LED_mA;int N;//电阻的个数cin >> N;if(USB <= LED_V)//电源恰好足够提供{for(int i = 0; i < N; i++){string temp;//虽然没有作用,但是还是需要输入cin >> temp;int temp2;cin >> temp2;}cout << "---" << endl;continue;}//计算使LED正常工作所需的电阻double resistance = 0.0;resistance =(USB - LED_V)/LED_mA*1000;priority_queue<Node, vector<Node>, cmp> Q;for(int i = 0; i < N; i++){string name;//电阻名字cin >> name;int weight;//电阻阻值cin >> weight;//判断并计算差值if(weight < resistance)//没办法使用它continue;else{Node temp;temp.name = name;temp.interval = (weight - resistance);Q.push(temp);}}if(Q.empty())//优先级队列为空,说明所有的电阻的阻值都小于规定的要求{cout << "IMPOSSIBLE" << endl;continue;}else{cout << setiosflags(ios::fixed) << setprecision(2) << resistance << " " << Q.top().name << endl;}}return 0;}
- sicily--1097. LED Modding
- sicily 1097. LED Modding
- [sicily online]1097. LED Modding
- 1097. LED Modding
- soj 1097. LED Modding
- 1097. LED Modding
- Sicily 1097 LED Modding(模拟题)
- MODDING THE iROBOT CREATE
- Rage(PC) Modding Notes
- The Motorola Q Modding Tutorial
- led
- LED
- led
- led
- led
- LED
- led
- LED
- dom4j 详解
- hdu Bomb 按位DP
- fwrite()的代码
- 巧用动画实现 facebook左侧动态抽屉菜单
- 2012-08-08
- sicily--1097. LED Modding
- 27 个必备的Javascript 开发工具
- 二分图最小覆盖点数(最大匹配):Machine Schedule
- Android程序退出彻底关闭进程的方法
- MFC的模块状态:从AfxGetApp()和AFX_MANAGE_STATE()看MFC的模块状态
- Printf()函数讲解
- 输出DOM中的XML的实体定义(InternalSubset)
- vc中调用Com组件的方法详解
- 使用Spring Security3的四种方法概述