本项目是华为2019年软件精英挑战赛的初赛题目的实现,初赛排名西北赛区 41 名
项目地址:https://github.com/WFrame0224/SDK_python


文章目录

  • 1. 运行说明
  • 2. 程序数据结构
  • 3. 程序文档说明
    • 3.1 程序函数说明
    • 3.2 程序逻辑简要说明

1. 运行说明

  • 使用语言 python 3.5
  • 采用的是 Ubuntu 18.04.2
  • 目录结构如下所示:
  • 运行时,执行下面任意一条命令即可:
    • python CodeCraft-2019.py ../config/car.txt ../config/road.txt ../config/cross.txt ../config/answer.txt
    • python dispatcher.py

2. 程序数据结构


上图所示为代码所用的数据结构

3. 程序文档说明

3.1 程序函数说明

  • strListToIntList(srcStr) strList转换为intList,方便后面的操作
  • loadData(filePath) 用于载入数据的函数生成器,调用一次返回一行数据
  • loadRoadData(road_path) 读取道路的数据
  • loadCarData(car_path) 用于载入car的数据建立有序的Cars二维列表
  • loadCrossData(cross_path) 此函数用于读取路口信息,返回
  • getRoadId(head, tail, Crosses) 函数用于返回两个路口连接的道路标号
  • creatGraph() 函数用于构建一基本路口道路有向图
  • driveCar2() 此函数是按照一定的发车方式,上路进行奔跑

3.2 程序逻辑简要说明

  • :程序并未实现调度器,或者是判题器,实际上式找了捷径,优化发车策略(调参)进行最大程度地避免死锁现象的发生

  • 程序主要执行逻辑如下图所示:

:逻辑中,车辆的预处理非常重要,对应于后面的发车策略

2019华为软件挑战赛初赛代码开源分享相关推荐

  1. 2019华为精英挑战赛初赛模拟试题总结思考

    小型机通常采用RISC和Unix操作系统 T 小型机操作系统一般是UNIX,PC服务器操作系统一般是windows.但是题干中RISC不是操作系统,是精简指令集计算机,是计算机***处理器的一种设计模 ...

  2. 2022华为软件挑战赛流量管理

    1.题目描述 共有 M 个客户节点和 N 个边缘节点. 在每个时刻,要决策如何把每个客户节点的带宽需求分配到边缘节点. 为了确保调度质量,每个客户节点的需求只能分配到满足 QoS 约束的边缘节点 上. ...

  3. 2017华为软件挑战赛总结

    2017华为软件挑战赛总结 这次比赛是去年做的, 自己之前没有总结,现在才开始总结,很多东西快想不起来了,真是惭愧 赛题主要内容和目的 初赛题目和内容 给你一个流网络(边有容量和单位流量费用),已知有 ...

  4. 如何将Android Studio与华为软件开发云代码仓库无缝对接(二)

    上篇文章:如何将Android Studio与华为软件开发云代码仓库无缝对接(一) 上一章讲了,如何用Android Studio以软件开发云代码仓库为基础,新建一个项目.接下来,这一章继续讲建好项目 ...

  5. 脑电EEG代码开源分享 【6. 分类模型-深度学习篇】

    往期文章 希望了解更多的道友点这里 0. 分享[脑机接口 + 人工智能]的学习之路 1.1 . 脑电EEG代码开源分享 [1.前置准备-静息态篇] 1.2 . 脑电EEG代码开源分享 [1.前置准备- ...

  6. 2021华为软件精英挑战赛初赛代码及思路

    2021华为软件精英挑战赛训练赛.正式赛思路分享     有幸再次参加了华为软件精英挑战赛(去年由于不知道数据集有坑,导致没能进入复赛,今年决定再来一次弥补去年的遗憾)     今年的赛题相比去年个人 ...

  7. 2019华为软件精英挑战赛分享

    目录 一.写在前面的话 二.语言选择 三.判题器实现 四.回溯解死锁 四.发车时间设计 五.寻路设计 六.写在最后的话 一.写在前面的话 第一次参加软件精英挑战赛,复赛最后打了第六名,队名是行车不规范 ...

  8. 2020华为软挑热身赛代码开源-思路大起底(华为软件精英挑战赛编程闯关)

    本文首发于个人公众号[两猿社],后台回复[华为],获取完整开源代码链接. 昵称:lou_shang_shi_bian_tai 成绩:0.032 社长没有针对硬件做任何优化,热身赛成绩也一般.但有些比赛 ...

  9. 2019华为软件精英挑战赛比赛经验分享(初赛,复赛,决赛)

    比赛成果: 初赛(700+):西北赛区第3. 复赛(32):西北赛区第3.(华为手机v20,华为面试绿卡,西北赛区二等奖,小礼物若干) 决赛(32):全国16强,具体排名13.(没有奖金,纪念品若干, ...

最新文章

  1. CentOS 7 命令
  2. eclipse 集成 github
  3. linux之ssh使用与配置
  4. Xamarin.Android 隐藏软键盘
  5. java.lang.IllegalArgumentException: An invalid domain [.test.com] was specified for this cookie解决方法
  6. “出题老师”超全划重点,赛场高分必备干货!
  7. SQL Server存储过程初学者
  8. 22 年过去了,Java 依然是开发者最爱的编程语言!
  9. agx 安装ros opencv_Linux下配置深度学习开发环境(及ros)
  10. 一种内存泄露检查和定位的方法
  11. 【第十届“泰迪杯”数据挖掘挑战赛】C题:疫情背景下的周边游需求图谱分析 赛后总结、46页论文及代码
  12. 数据结构与算法部分术语中英文对照
  13. PPT绘图之AI助力论文图
  14. 爬取当当网评论(1)
  15. 在命令窗中查询当前电脑IP
  16. 嵌入式GUI LVGL『Tableview选项卡控件』介绍
  17. android 数据线有几种,不止是安卓和苹果线,手机数据线原来还有这几种!
  18. [图像特征匹配]SIFT、SURF、ORB算法笔记以及代码实现
  19. 跨境电商亚马逊品牌卖家将会面临的机遇和挑战(一)
  20. 随机效应估算与固定效应估算_固定效应模型的估计原理说明.pdf

热门文章

  1. 测控技术与仪器考计算机三级,测控技术与仪器专业就业方向及前景
  2. java数据库图书销售系统_SQL+java数据库课程设计,图书销售管理系统
  3. 韩语键盘输入对照(Korean_Keyboard)
  4. Debug调试工具的使用
  5. CNN篇(1)——Finetuning,猫狗大战,VGGNet的重新针对训练
  6. php伪静态网前台页面,如何让Discuz门户频道页支持伪静态
  7. ubuntu上编译stepmania
  8. Andoird 软键盘的弹出、收起(二)
  9. 雷达副瓣对消的matlab程序,动目标显示与脉冲多普勒雷达(MATLAB程式设计)
  10. ubuntu 15fa网卡驱动安装