华为OD机试真题C卷-篇3
文章目录
- 查找一个有向网络的头节点和尾节点
- 幼儿园篮球游戏
查找一个有向网络的头节点和尾节点
- 在一个有向图中,有向边用两个整数表示,第一个整数表示起始节点,第二个整数表示终止节点;
- 图中只有一个头节点,一个或者多个尾节点;
- 图可能存在环,有环则输出-1;
- 输出图中的头节点(入度为0)、尾节点(出度为0),如图头节点为1,尾节点为4。
输入描述:
第一行输入n,n >=0
第二行为n个数对,表示n条边;
输出描述:
输出一行,头节点、尾节点以空格隔开,多个尾节点则从大到小输出。
示例1
输入:
4
1 2 1 3 2 4 3 4
输出:
1 4
思路:
- 拓扑排序,判断有向图是否有环,有环则直接输出-1;
- 只有一个起始点,一个或多个结尾点;
relations = {}
indegree = {}
head = -1
tails = []def find_head():global relations,indegree,headfor keys in relations:if (keys in indegree) :continueelse :head = keysbreakdef find_tails():global relations,indegree,tailsfor keys in indegree :if (keys in relations) :continueelse :tails.append(keys)n = int(input())
nums = [int(x) for x in input().split(" ")]i=0
while(i < 2 * n):if(nums[i] in relations):relations[nums[i]].append(nums[i + 1])else :relations[nums[i]] = []relations[nums[i]].append(nums[i + 1])if(nums[i + 1] in indegree):indegree[nums[i + 1]] += 1else :indegree[nums[i + 1]] = 1i += 2find_head()
find_tails()
tails.sort()queue = []
queue.append(head)
while (True) :if(len(queue)<=0):breakelse :temp = queue[0]queue.pop(0)if(temp in relations):temp_list = relations[temp]for x in temp_list:indegree[x]= indegree[x] - 1if (indegree[x] == 0) :queue.append(x)
flag = 1
for key in indegree:if (indegree[key] > 0) :flag = 0if (flag==0) :print(-1)
else: output_str = str(head) + " "for x in tails:output_str += str(x) + " "print(output_str[:-1])
幼儿园篮球游戏
双指针+ 线性表
import functools
import sys
import copy
import re
import mathnums = [int(x) for x in input().split(",")]
target_nums = [int(x) for x in input().split(",")]arr = [float('inf') for i in range(300)]left = 0
right = 0
target_pos = 0result = ""
i=0
while(True):if(i>=len(nums)):breakelse :arr[right] = nums[i]right+=1while (True) :if(right <= left):breakelse :if (arr[left] == target_nums[target_pos]) :result += "L"left += 1target_pos += 1continueelif (arr[right-1] == target_nums[target_pos]) :result += "R"right -= 1target_pos += 1continuebreaki+=1if (left != right) :print("NO")
else :print(result)
相关文章:

华为OD机试真题C卷-篇3
文章目录 查找一个有向网络的头节点和尾节点幼儿园篮球游戏 查找一个有向网络的头节点和尾节点 在一个有向图中,有向边用两个整数表示,第一个整数表示起始节点,第二个整数表示终止节点;图中只有一个头节点,一个或者多…...

[SWPUCTF 2021 新生赛]include
他让我们传入一个flag值 我们传入即可看到代码部分 传入一个php的伪类即可 得到经过Base64加密的flag,解密即可...

LeetCode、17. 电话号码的字母组合【中等,dfs回溯】
文章目录 前言LeetCode、17. 电话号码的字母组合【中等,dfs回溯】题目与类型思路递归回溯优化:StringBuilder来回溯补充代码:2024.1.31(简化) 资料获取 前言 博主介绍:✌目前全网粉丝2W,csdn博…...

SSRF漏洞给云服务元数据带来的安全威胁
文章目录 前言元数据服务威胁1.1 Metadata元数据1.2 RAM资源管理角色1.3 STS 临时凭据利用1.4 CF云环境利用框架1.5 元数据安全性增强 TerraformGoat2.1 永久性AccessKey2.2 SSRF靶场环境搭建2.3 腾讯云CVM配角色2.4 接管腾讯云控制台 SSRF组合拳案例3.1 上传图片功能SSRF3.2 文…...
【C++】强制类型转换
强制类型转换分为显式和隐式 显式直接用小括号强制转换,float b (int)a; 隐式直接 float b 0.5; int a b; C中更推荐用四个强制类型转换的关键字: 1、static_cast, 2、const_cast, 3、reinterpret_cast, 4、dynami…...

java日志框架总结(四 、JCL日志门面技术)
日志框架出现的历史顺序:Log4j → JUL → JCL → slf4j → logback → log4j2 一、背景 在前面博文中,我们分别讲述了常用的2个日志框架:JUL(Java Util Logging)、Log4J。那么如何选择使用哪一个呢? 根据项…...

mfc140.dll丢失的几种修复方式,有效的解决文件丢失问题
mfc140.dll是Microsoft Foundation Class (MFC)库中的一个非常重要的DLL文件。它承载了许多被执行程序使用的函数和资源。这个库主要被广泛应用于开发Windows操作系统上的应用程序。然而,有时候我们可能会遭遇到mfc140.dll缺失或损坏的情况,这会导致依赖…...

从一个小故事讲解观察者模式~
定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 什么是观察者模式? 观察者模式在我们的日常生活中极其常见。 先来看看观察者模式的定义: 观察者模式定义了对象之间…...

LeetCode、1137. 第 N 个泰波那契数【简单,动态规划】
文章目录 前言LeetCode、1137. 第 N 个泰波那契数【简单,动态规划】题目与分类思路一维动态规划 资料获取 前言 博主介绍:✌目前全网粉丝2W,csdn博客专家、Java领域优质创作者,博客之星、阿里云平台优质作者、专注于Java后端技术…...

Python爬虫urllib详解
前言 学习爬虫,最初的操作便是模拟浏览器向服务器发出请求,那么我们需要从哪个地方做起呢?请求需要我们自己来构造吗?需要关心请求这个数据结构的实现吗?需要了解 HTTP、TCP、IP 层的网络传输通信吗?需要知…...

Linux嵌入式开发+驱动开发-中断
swi汇编指令可以产生软中断,以下是硬件中断的产生到执行完毕的全过程: 在自己设计的芯片“CPU响应中断”程序的第四个步骤可以转向“中断向量控制器”,中断向量控制器中存储中断元服务地址即处理中断处理程序的地址,而不用使用0X1…...
android tv开发-1,leanback
目录 1.leanback库的一些事 2.leanback在使用时遇到的一些麻烦 视频卡片 页面空白 关于左侧菜单的一些设置 数据加载异常与加载中的一些操作 如果页面无数据,如何显示错误的页面....

chisel RegInit/UInt/U
val reg RegInit(0.U(8.W)) //ok val reg RegInit(0.UInt(8.W)) //errU 使用在数字 . 后边50.U UInt 使用在IO(new Bundle val a Input(UInt(8.W)) 或者 def counter(max:UInt, a1:UInt) package emptyimport chisel3._ import chisel3.util._class MyCounter extends …...
华为OD机试真题-田忌赛马-2024年OD统一考试(C卷)
题目: 给定两个只包含数字的数组a,b,调整数组 a 里面数字的顺序,使得尽可能多的 a[i] >b[i]。数组 a和 b 中的数字各不相同。 输出所有可以达到最优结果的 a 数组的数量 输入描述: 输入的第一行是数组 a 中的数字,其中只包含数字,每两个数字之间相隔一个空格,a 数组…...

QMUI_Android:提升Android开发效率与质量的利器
QMUI_Android:提升Android开发效率与质量的利器 在Android应用开发过程中,开发者常常面临着重复编写基础组件和处理兼容性问题的挑战,这不仅耗费时间,也降低了开发效率。为了解决这一问题,Tencent推出了QMUI_Android框…...

如何部署Linux AMH服务器管理面板并结合内网穿透远程访问
文章目录 1. Linux 安装AMH 面板2. 本地访问AMH 面板3. Linux安装Cpolar4. 配置AMH面板公网地址5. 远程访问AMH面板6. 固定AMH面板公网地址 AMH 是一款基于 Linux 系统的服务器管理面板,它提供了一系列的功能,包括网站管理、FTP 管理、数据库管理、DNS 管…...

C++文件操作(2)
文件操作(2) 1.二进制模式读取文本文件2.使用二进制读写其他类型内容3.fstream类4.文件的随机存取文件指针的获取文件指针的移动 1.二进制模式读取文本文件 用二进制方式打开文本存储的文件时,也可以读取其中的内容,因为文本文件…...

Bootstrap5 图片轮播
Bootstrap5 轮播样式表使用的是CDN资源 <title>亚丁号</title><!-- 自定义样式表 --><link href"static/front/css/front.css" rel"stylesheet" /><!-- 新 Bootstrap5 核心 CSS 文件 --><link rel"stylesheet"…...

WINDOWS搭建NFS服务器
下载并安装 Networking Software for Windows 启动配置 找到安装目录(如C:\Program Files\nfsd),双击nfsctl.exe,菜单Edit->Preferences 启动后: 配置Export Exports->Edit exports file 其他的几句我都删除…...

LeetCode、216. 组合总和 III【中等,组合型枚举】
文章目录 前言LeetCode、216. 组合总和 III【中等,组合型枚举】题目类型与分类思路 资料获取 前言 博主介绍:✌目前全网粉丝2W,csdn博客专家、Java领域优质创作者,博客之星、阿里云平台优质作者、专注于Java后端技术领域。 涵盖…...

深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

地震勘探——干扰波识别、井中地震时距曲线特点
目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...

【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...

基于Java+MySQL实现(GUI)客户管理系统
客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...

iview框架主题色的应用
1.下载 less要使用3.0.0以下的版本 npm install less2.7.3 npm install less-loader4.0.52./src/config/theme.js文件 module.exports {yellow: {theme-color: #FDCE04},blue: {theme-color: #547CE7} }在sass中使用theme配置的颜色主题,无需引入,直接可…...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...

给网站添加live2d看板娘
给网站添加live2d看板娘 参考文献: stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下,文章也主…...