教育网站 怎么做吸引人,中英网站模板 照明,海外网络推广渠道,重庆网站首页制作2023蓝桥省赛B组 B题 飞机降落 题解
标准深搜板子题#xff0c;难度不大
#includebits/stdc.h
using namespace std;
#define MAX 10
struct node{int t,d,l;//t:飞机到达时间 d:飞机最大盘旋时间 l:飞机降落所需时间bool v;//标记此架飞机是否被搜索过 用于剪枝
};…2023蓝桥省赛B组 B题 飞机降落 题解
标准深搜板子题难度不大
#includebits/stdc.h
using namespace std;
#define MAX 10
struct node{int t,d,l;//t:飞机到达时间 d:飞机最大盘旋时间 l:飞机降落所需时间bool v;//标记此架飞机是否被搜索过 用于剪枝
};
node p[MAX];
int t,n;//t:样例数 n:飞机数
bool dfs(int k,int time){//k:当前搜索到的飞机架数 time:上一架飞机实际降落时间if(kn) return 1;for(int i0;in;i){if(!p[i].vp[i].tp[i].dtime){/*剪枝:1.进入搜索的飞机必须是未被搜索过的飞机2.飞机到达时间与最大盘旋时间之和必须不早于上一架飞机实际降落时间*/p[i].v1;if(dfs(k1,max(time,p[i].t)p[i].l)) return 1;//若向下递归所有飞机均返回1 此处才能返回1p[i].v0;//回溯}}return 0;//若向下递归时只要有1架飞机不符合要求 则返回0
}
int main(){cint;while(t--){memset(p,0,sizeof p);cinn;for(int i0;in;i) cinp[i].tp[i].dp[i].l;if(dfs(0,0)) coutYESendl;//从第0架飞机开始搜索else coutNOendl;}return 0;
}