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

服饰类行业_如果要建设网站_说明其建站流程.南昌网站建设价格

服饰类行业_如果要建设网站_说明其建站流程.,南昌网站建设价格,静海集团网站建设,苏州协会网站建设解题思路 这道题目要求我们判断给定的飞机是否都能在它们的油料耗尽之前降落。为了寻找是否存在合法的降落序列,我们可以使用深度优先搜索(DFS)的方法,尝试所有可能的降落顺序。 首先,我们需要理解题目中的条件。每架…

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

解题思路

这道题目要求我们判断给定的飞机是否都能在它们的油料耗尽之前降落。为了寻找是否存在合法的降落序列,我们可以使用深度优先搜索(DFS)的方法,尝试所有可能的降落顺序。

首先,我们需要理解题目中的条件。每架飞机在 T i T_i Ti 时刻到达机场上空,剩余油料可以维持 D i D_i Di 个单位时间,降落需要 L i L_i Li 个单位时间。这意味着每架飞机可以在 T i T_i Ti T i + D i T_i+D_i Ti+Di 的时间段内开始降落。

然后,我们可以按照以下步骤来实现 DFS:

  1. 首先,我们初始化一个布尔数组 st[] 来记录每架飞机是否已经降落。
  2. 然后,我们对每架飞机尝试进行降落。这里的 “尝试” 意味着我们需要检查该飞机是否可以在当前的时间内开始降落,即它的开始降落时间是否在 T i T_i Ti T i + D i T_i+D_i Ti+Di 的时间段内。如果可以,我们就让它降落,并把 st[i] 设置为 true
  3. 在一架飞机降落之后,我们递归地对剩下的飞机进行尝试。这一步就是 DFS 的主要部分,我们需要在所有的可能的降落序列中进行搜索。
  4. 如果在某一步我们发现当前的飞机无法在当前的时间内开始降落,我们就返回 false,并在上一层中尝试下一架飞机。
  5. 如果所有的飞机都已经降落,我们就返回 true
  6. 最后,我们对所有飞机进行尝试。如果存在至少一个可以让所有飞机都降落的序列,我们就输出 YES,否则输出 NO

通过以上步骤,我们可以找出是否存在一个合法的降落序列,使得所有的飞机都能在它们的油料耗尽之前降落。

AC_Code

  • C++
#include <iostream>
#include <cstring>
#include <algorithm>using namespace std;const int N = 15;int n;
int a[N], b[N], c[N];
bool st[N];bool dfs(int u, int last, int cnt)
{if (b[u] < last)return false;if (cnt == n)return true;for (int i = 0; i < n; ++ i )if (!st[i]){st[i] = true;if (dfs(i, max(a[u], last) + c[u], cnt + 1))return true;st[i] = false;}return false;
}int main()
{int T;cin >> T;while (T -- ){memset(st, 0, sizeof st);cin >> n;for (int i = 0; i < n; ++ i )cin >> a[i] >> b[i] >> c[i], b[i] += a[i];bool flag = false;for (int i = 0; i < n; ++ i ){st[i] = true;if (dfs(i, 0, 1)){flag = true;break;}st[i] = false;}cout << (flag? "YES": "NO") << endl;}return 0;
}
  • Java
import java.util.*;public class Main {static final int N = 15;static int n;static int[] a = new int[N], b = new int[N], c = new int[N];static boolean[] st = new boolean[N];static boolean dfs(int u, int last, int cnt) {if (b[u] < last) {return false;}if (cnt == n) {return true;}for (int i = 0; i < n; ++i) {if (!st[i]) {st[i] = true;if (dfs(i, Math.max(a[u], last) + c[u], cnt + 1)) {return true;}st[i] = false;}}return false;}public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int T = scanner.nextInt();while (T-- > 0) {Arrays.fill(st, false);n = scanner.nextInt();for (int i = 0; i < n; ++i) {a[i] = scanner.nextInt();b[i] = scanner.nextInt() + a[i];c[i] = scanner.nextInt();}boolean flag = false;for (int i = 0; i < n; ++i) {st[i] = true;if (dfs(i, 0, 1)) {flag = true;break;}st[i] = false;}System.out.println(flag ? "YES" : "NO");}scanner.close();}
}
  • Python
N = 15
a, b, c = [0]*N, [0]*N, [0]*N
st = [False]*Ndef dfs(u, last, cnt):if b[u] < last:return Falseif cnt == n:return Truefor i in range(n):if not st[i]:st[i] = Trueif dfs(i, max(a[u], last) + c[u], cnt + 1):return Truest[i] = Falsereturn FalseT = int(input().strip())
for _ in range(T):st = [False]*Nn = int(input().strip())for i in range(n):a[i], b[i], c[i] = map(int, input().strip().split())b[i] += a[i]flag = Falsefor i in range(n):st[i] = Trueif dfs(i, 0, 1):flag = Truebreakst[i] = Falseprint("YES" if flag else "NO")

【在线测评】

在这里插入图片描述

http://www.yayakq.cn/news/275844/

相关文章:

  • 房地产网站设计方案project 网站开发计划
  • 建设部特种作业证网站查询展示型网站制作服务
  • 网站建设论文选题网站开发 流程图
  • 安徽做网站哪家好wordpress 安全性设置
  • 做网站推广员需要wordpress 类别 排序
  • 招聘网站免费平台微信的网站开发
  • 龙华附近网站建设公司前端需要会wordpress
  • 万州网站推广wordpress有广告插件下载
  • 建设网站需要营业执照微信公众平台开发模式
  • 建设在线购物网站简单的企业小网站
  • 服装页面设计的网站最好看免费观看高清大全一影视下载
  • 台州响应式建站动画制作专业培训
  • 產品定制网站开发崂山网站建设
  • 公众号做 视频网站ps个人网站怎么做
  • 做知识问答的网站系统管理在哪里找怎么找
  • 工程施工行业在哪个网站容易找事做wordpress最全seo标题
  • 网站开发js路径阳江做网站
  • 购物网站下载阜宁网站制作服务
  • 杭州企业网站seo做调查问卷赚钱的网站
  • 网站运营和维护都是干什么的临海市建设局官网站
  • 网站推广初期目标深圳外贸公司排名
  • 大学生创新创业网站建设内容网站放到国外空间
  • 做网站还是做微信公众号直接做那个视频网站
  • 网站后台怎么挂广告 怎么做政法队伍建设网站主要内容
  • 怎样取消网站备案wordpress 下载按钮插件
  • 在线html5制作网站网站模板 扁平化
  • 泊头市建设局官方网站兰州装修公司有哪些
  • 南昌网站seo外包服务手机助手app下载
  • 做的网站无法显示此页手机网站设计需求分析
  • 青岛做网站eoe保定网站优化排名