51nod1432【贪心】
2024-08-23 07:38:09
对于每个数我找一个和他相加最接近独木舟,然后ans+=1;
想复杂了,直接两端来就好了。
然后两个相加如果<=m那么就让它们在一起,不是的话就让大的一艘船,然后继续搞(贪心)
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int INF=-0x3f3f3f3f;
const int N=1e4+10;
int a[N];
int n,m;
int main()
{
scanf("%d%d",&n,&m);
for(int i=0;i<n;i++)
scanf("%d",&a[i]);
sort(a,a+n);
int s,t;
s=0;t=n-1;
int ans=0;
while(s<=t)
{
if(a[s]+a[t]>m)
t--;
else
{
s++;
t--;
}
ans++;
}
printf("%d\n",ans);
return 0;
}
最新文章
- 【NLP】揭秘马尔可夫模型神秘面纱系列文章(一)
- Start with connect by prior 递归查询
- 适配布局-ios
- Eclipse中Sever启动成功,但tomcat无法管理页面无法访问。
- R作图
- Sublime Text 编辑器
- IOS App动态更新
- TimePicker,TimePickerDialog以及自定义timepicker(一)
- 实现Android 动态载入APK(Fragment or Activity实现)
- TF.Learn
- JavaScript学习笔记(散)——继承、构造函数super
- CSS的display:table
- 【译】索引进阶(六):SQL SERVER索引书签
- 第一周——数据分析之表示 —— Numpy入门
- Oracle启动和关闭数据库
- JavaWeb连接SQLServer数据库并完成一个登录界面及其功能设计。
- centos redis5 安装 和 基本配置
- python字符串格式化之学习笔记
- 爬虫必备—scrapy-redis(分布式爬虫)
- 【Oracle】查看被锁的表和解锁