NYOJ236 贪心算法
来源:互联网 发布:什么是遗传算法 编辑:程序博客网 时间:2024/06/05 16:10
题目大意:
传送门
我的理解:
首先进行对木棒数组进行排序,从小到大,长度更小的排在前面,长度相同的质量更小的排在前面。采用贪心算法。
具体在代码注释;
我的代码:
#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#define MAX_N 5005using namespace std;typedef pair<int,int> P;P wood[MAX_N];int tag[MAX_N];bool cmp(P a,P b){ if(a.first<b.first) return 1; else if(a.first==b.first&&a.second<b.second) return 1; return 0; } int main(){freopen("D:/OJ/挑战程序设计竞赛/NYOJ236.txt","r",stdin);int T;cin>>T;int n;while(T-- != 0){int result = 0;memset(tag,0,sizeof(tag));cin>>n;for(int i = 0;i<n;i++){cin>>wood[i].first>>wood[i].second;}sort(wood,wood+n,cmp);for(int i = 0;i<n;i++){if(tag[i] == 0){result++;//相当于重启一次机器 int weight = wood[i].second;for(int j = i+1;j<n;j++){//重启机器后,遍历以后的数组,找到还未被访问的以及不用重启机器就能投入作业的木棒 if(tag[j] == 0 && wood[j].second>=weight){tag[j] = 1;weight = wood[j].second;}}}}cout<<result<<endl;}}
阅读全文
0 0
- NYOJ236 贪心算法
- nyoj236
- NYOJ236 心急的C小加 【贪心】
- nyoj236 心急的C小加 【贪心】
- nyoj12+nyoj14+nyoj236贪心区间三部曲
- NYOJ236. 心急的C小加(排序+贪心)
- 【贪心】贪心算法总结
- 贪心算法
- 贪心算法
- 贪心算法
- 贪心算法
- 贪心算法
- 贪心算法
- 贪心算法
- 贪心算法
- 贪心算法
- 贪心算法
- 贪心算法
- 台湾大学林轩田机器学习技法课程学习笔记11 -- Gradient Boosted Decision Tree
- 单调队列模板(poj2823)
- 斜率优化简单的模板(HDU3507)
- 模拟测试(vj4)
- 算法导论3.2练习题
- NYOJ236 贪心算法
- Java-集合
- 割点和桥模板
- org.springframework.dao.InvalidDataAccessApiUsageException:
- 凸包模板(codevs1298)(洛谷2742)
- NLP的两种工具的java版使用:复旦FudanNLP,中科院计算所ICTCLAS2013
- IBMappscan9 破解方法
- 次小生成树(LA5713)
- 最小生成树和倍增法求lca(Uva11354Bond)