NYJO71&南阳理工oj_71(独木舟上的旅行) (贪心)
2014-03-27 17:34
344 查看
题目信息:
一条独木舟最多只能乘坐两个人,且乘客的总重量不能超过独木舟的最大承载量。找出可以安置所有旅客的最少的独木舟条数.
输入:第一行输入s,表示测试数据的组数;
每组数据的第一行包括两个整数w,n,80<=w<=200,1<=n<=300,w为一条独木舟的最大承载量,n为人数;
接下来的一组数据为每个人的重量(不能大于船的承载量);输出:
船只数
题目链接 ——>
南阳理工oj_71(独木舟上的旅行) (贪心)
题意分析:
/***************************************************************************
贪心算法,找到最优结果进行判断对数据排序,判断最大和最小的和
与w的关系,if(a[max]+a[min]<=w)则已经送走两个人(n-=2),循环最大
和最小值,(此题一船最多载两个人)用(sum)记录船数,if不满足条件,
从最小一端(min)循环,直到与max相等退出循环,sum+=n;
(初学,描述不清,请见谅)
****************************************************************************/
源代码:
#include<iostream>//贪心算法
#include<algorithm>
using namespace std;
int a[301];
int main()
{
int t;
cin>>t;
while(t--){
int w,n;
cin>>w>>n;
for(int i=0;i<n;i++)
cin>>a[i];
sort(a,a+n);//排序
int sum=0,i,j;
i=0;j=n-1;
while(1){
if(j<=i){//结束循环,并判断剩余人数,
sum+=n;
break;
}
if(a[i]+a[j]<=w){//两个人一条船
++i;//循环下标
n-=2;//人数减2
sum++;//船加1
}
--j;//从一端进行判断,直到另一端结束
}
cout<<sum<<endl;
}
return 0;
}
一条独木舟最多只能乘坐两个人,且乘客的总重量不能超过独木舟的最大承载量。找出可以安置所有旅客的最少的独木舟条数.
输入:第一行输入s,表示测试数据的组数;
每组数据的第一行包括两个整数w,n,80<=w<=200,1<=n<=300,w为一条独木舟的最大承载量,n为人数;
接下来的一组数据为每个人的重量(不能大于船的承载量);输出:
船只数
题目链接 ——>
南阳理工oj_71(独木舟上的旅行) (贪心)
题意分析:
/***************************************************************************
贪心算法,找到最优结果进行判断对数据排序,判断最大和最小的和
与w的关系,if(a[max]+a[min]<=w)则已经送走两个人(n-=2),循环最大
和最小值,(此题一船最多载两个人)用(sum)记录船数,if不满足条件,
从最小一端(min)循环,直到与max相等退出循环,sum+=n;
(初学,描述不清,请见谅)
****************************************************************************/
源代码:
#include<iostream>//贪心算法
#include<algorithm>
using namespace std;
int a[301];
int main()
{
int t;
cin>>t;
while(t--){
int w,n;
cin>>w>>n;
for(int i=0;i<n;i++)
cin>>a[i];
sort(a,a+n);//排序
int sum=0,i,j;
i=0;j=n-1;
while(1){
if(j<=i){//结束循环,并判断剩余人数,
sum+=n;
break;
}
if(a[i]+a[j]<=w){//两个人一条船
++i;//循环下标
n-=2;//人数减2
sum++;//船加1
}
--j;//从一端进行判断,直到另一端结束
}
cout<<sum<<endl;
}
return 0;
}
相关文章推荐
- 南阳理工OJ_题目71 独木舟上的旅行
- 独木舟上的旅行(南阳oj71)(贪心)
- nyoj 71 独木舟上的旅行 【贪心&&简单】
- 南阳理工acm71 独木舟上的旅行(贪心简单题)
- NYOJ71——独木舟上的旅行(贪心)
- NYOJ 题目71 独木舟上的旅行(贪心)
- NYOJ 71 独木舟上的旅行【贪心】
- 【南理oj】71 - 独木舟上的旅行(贪心)
- 南阳oj 71 独木舟上的旅行
- 南阳oj NYOj 贪心 题目71 独木舟上的旅行
- nyoj 71 独木舟上的旅行 贪心
- nyoj 南阳oj 071 独木舟上的旅行 贪心
- NYOJ 71 独木舟上的旅行 (贪心)
- nyoj 71 独木舟上的旅行(贪心专题)
- 71 独木舟上的旅行【贪心】
- C语言 南阳理工 ACM 71 独木舟上的旅行
- NYOJ题目71-独木舟上的旅行(贪心)
- nyoj 71 独木舟上的旅行 (贪心)
- 贪心——NYOJ 题目71 独木舟上的旅行
- nyoj--71 独木舟上的旅行(贪心)