【2023蓝桥真题】C++ C组题解

2024-04-10 1082阅读

温馨提示:这篇文章已超过387天没有更新,请注意相关的内容是否还可用!

好了,我们开始

【2023蓝桥真题】C++ C组题解
(图片来源网络,侵删)

目录

飞机降落

岛屿个数

接龙数列

子串简写

日期统计

整数删除


飞机降落

N 架飞机准备降落到某个只有一条跑道的机场。其中第 i 架飞机在 Ti 时刻到达机场上空,到达时它的剩余油料还可以继续盘旋 Di 个单位时间,即它最早

可以于 Ti 时刻开始降落,最晚可以于 Ti + Di 时刻开始降落。降落过程需要 Li个单位时间。

一架飞机降落完毕时,另一架飞机可以立即在同一时刻开始降落,但是不能在前一架飞机完成降落前开始降落。

请你判断 N 架飞机是否可以全部安全降落。

输入格式:

输入包含多组数据。

第一行包含一个整数 T,代表测试数据的组数。

对于每组数据,第一行包含一个整数 N。

以下 N 行,每行包含三个整数:Ti,Di 和 Li。

2
3
0 100 10
10 10 10
0 2 20
3
0 10 20
10 10 20
20 10 20

输出格式:

对于每组数据,输出 YES 或者 NO,代表是否可以全部安全降落。

YES
NO

提示:

对于第一组数据,可以安排第 3 架飞机于 0 时刻开始降落,20 时刻完成降落。安排第 2 架飞机于 20 时刻开始降落,30 时刻完成降落。安排第 1 架飞机于 30 时刻开始降落,40 时刻完成降落。

对于第二组数据,无论如何安排,都会有飞机不能及时降落。

对于 30% 的数据,N ≤ 2。

对于 100% 的数据,1 ≤ T ≤ 10,1 ≤ N ≤ 10,0 ≤ Ti , Di , Li ≤ 105。

思路:

我们只需模拟下去就行,首先你会看到dfs中我有n个分支,这里就是取最佳能降落的飞机过程,然后让他降落,如果这个决策在后面发现是错误的,那就回溯,重新进行这个决策即可,不断重复直到把所有飞机降落完成就行了。

细节:

首先就是我写的这个bool dfs函数有个特点,就是只要找到答案就会立刻结束整个dfs过程,那么我们当然希望它能够今早的找到答案了,这样能加节约时间,所以我对plane进行了排序,以便每次都能尽量选取正确的决策。

然后就行说一下我当时做这个题遇到的一个坑:那就是下个过来的飞机可能会很晚,因此这种情况下应该上个飞机降落后时间应该再推迟一下,才能赶上下一个新来的飞机,所以我用了max函数。

*/

#include                      //飞机降落:每架飞机到达时间t,盘旋时间d,降落时间l,
#include                
#include 
#include 
using namespace std;
int T,n;
int vis[11];
struct plane{
	int t,d,l;
	int lasttime;
}p[11];
bool cmp(plane p1,plane p2){ //只要dfs越早找到答案就越早返回true结束dfs,所有排序很有必要
	return p1.lasttime>n;
		for(int i=0;i>p[i].t>>p[i].d>>p[i].l;
			p[i].lasttime=p[i].t+p[i].l;
		}
		sort(p,p+n,cmp);
		
		if(dfs(0,0)) ans[cnt]="YES";
		else ans[cnt]="NO";
		cnt++; //保存答案一块输出
		memset(p,0,sizeof(p));
		memset(vis,0,sizeof(vis));
	}
	for(int i=0;im>>n;
        memset(g,'0',sizeof(g));  ans=0;
        for (int i=1; ig[i][j];
            }
        }
        bfs1();//先在外面把海水都染成2,这样剩下的都是环(因为外面的水进不去环)
        for (int i=1; ich1>>ch2;
	for(int i=0;i
VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]