当前位置: 首页 > article >正文

GESP4级考试语法知识(贪心算法(四))

整数区间1代码:

#include<iostream>
#include<algorithm>
using namespace std;
int n;
struct node
{
	int l,r;
}a[1001];
bool cmp(node a,node b)
{
	return a.r<b.r;
};
int main()
{
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>a[i].l>>a[i].r;
	}
	sort(a,a+n,cmp);
	int temp=0,ans=1;
	for(int i=1;i<n;i++)
	{
		if(a[temp].r>=a[i].l) continue ;
		else
		{
			temp=i;
			ans++;
		}
	}
	cout<<ans<<endl;
 	return 0;
}

整数区间2代码:

#include<cstdio>
#include<algorithm>
using namespace std;
struct node
{
	int x,y,s;
	bool operator < (const node &p)const
	{
		if(y<p.y) return 1;
		else if(y==p.y&&x<=p.x) return 1;
		return 0;
	}
} a[10005],t;
int main()
{
	int n,i,j,sum=0;
	scanf("%d",&n);
	for(i=1; i<=n; i++)
		{
			scanf("%d%d",&a[i].x,&a[i].y);
			a[i].s=2;//标记该闭区间剩下需要的元素
		}
	sort(a+1,a+n+1);//排序
	for(i=1; i<=n; i++)
		{
			if(a[i].s>0)   //a[i]可用
				{
					a[i].s--;//a[i]所需的元素-1
					for(j=i+1; j<=n; j++)   //该元素在其他闭区间是否存在
						{
							if(a[i].y>=a[j].x&&a[i].y<=a[j].y)
								a[j].s--;
						}
					sum++;
					if(a[i].s>0)   //再进行一次判断
						{
							a[i].s--;
							for(j=i; j<=n; j++)
								{
									if(a[i].y-1>=a[j].x&&a[i].y-1<=a[j].y)
										a[j].s--;
								}
							sum++;
						}
				}
		}
	printf("%d",sum);
}


http://www.kler.cn/a/397725.html

相关文章:

  • 创建vue+electron项目流程
  • SpringBoot 2.2.10 无法执行Test单元测试
  • MYSQL 精通索引【快速理解】
  • linux逻辑卷练习
  • 源码解析-Spring Eureka(更新ing)
  • Photoshop(PS)——人像磨皮
  • 从二维到一维:动态规划矩阵问题的优化之道
  • spring-cache concurrentHashMap 自定义过期时间
  • 将 HTML 转换为 JSX:JSX 和 JSX 规则
  • 【项目开发】分析六种常用软件架构
  • ISCTF2024
  • 算法沉淀一:双指针
  • 【Android Compose原创组件】可拖动滚动条的完美实现
  • 算法:快排(三指针算法)
  • YashanDB 23.2.3安装过程,并使用DBeaver进行连接
  • 【如何获取股票数据47】Python、Java等多种主流语言实例演示获取股票行情api接口之沪深指数历史分时KDJ数据获取实例演示及接口API说明文档
  • windows C#-创建记录类型(下)
  • Vue3 -- 项目配置之eslint【企业级项目配置保姆级教程1】
  • mysql数据迁移PolarDB
  • ubuntu安装 Pycharm
  • Prometheus面试内容整理-数据持久化和高可用
  • cocosCreator视频web模式播放踩坑解决
  • 分页查询我的课表
  • 性能高于Transformer模型1.7-2倍,彩云科技发布基于DCFormer架构通用大模型云锦天章
  • 什么是Spring Boot Actuator
  • 第二十二章 TCP 客户端 服务器通信 - TCP设备的OPEN和USE命令关键字