寒假刷题第19天

PTA甲级

1134 Vertex Cover

#include<iostream>
#include<vector>
#include<set>using namespace std;typedef pair<int , int> PII;
vector<PII>v;
int n , m;bool check(set<int>&se)
{for(auto i : v)if(!se.count(i.first) && !se.count(i.second)) return false;return true;
}int main()
{cin >> n >> m;while(m --){int a , b;cin >> a >> b;v.push_back({a , b});}cin >> m;while(m --){int k;set<int>se;cin >> k;for(int i = 0;i < k;i ++){int x;cin >> x;se.insert(x);}if(check(se)) puts("Yes");else puts("No");}return 0;
}

1171 Replacement Selection

小顶堆

#include<iostream>
#include<algorithm>
#include<queue>
#include<vector>using namespace std;const int N = 1e5 + 10;
int n , m , cnt = 0;
int a[N];
priority_queue<int , vector<int> , greater<int>>q1 , q2;int main()
{cin >> n >> m;for(int i = 0;i < n;i ++) cin >> a[i];for(int i = 0;i < m;i ++) q1.push(a[i]);int idx = m;while(!q1.empty()){int t = q1.top();q1.pop();cout << t;if(idx < n) // 防止越界{if(t > a[idx]) q2.push(a[idx ++]);else q1.push(a[idx ++]);}if(q1.empty()) // 当前队列已经结束{swap(q1 , q2);cout << endl;}else cout << " ";// 继续输出}return 0;
}

1173 How Many Ways to Buy a Piece of Land

#include<iostream>using namespace std;const int N = 1e4 + 10;
typedef long long ll;
int n , cnt;
ll m , a[N];
bool st[N];void dfs(int u , ll total , ll&res)
{if(u == n) return ;if(total >= a[u]) res ++ , dfs(u + 1 , total - a[u] , res);
}int main()
{scanf("%d %lld" , &n ,&m);for(int i = 0;i < n;i ++){ll x;scanf("%lld" ,&x);if(x <= m) a[cnt ++] = x;}n = cnt;ll res = 0;for(int i = 0;i < n;i ++)dfs(i , m , res);printf("%lld" , res);return 0;
}

1135 Is It A Red-Black Tree

注意数组开大一点,否则段错误

#include<iostream>
#include<algorithm>
#include<vector>
#include<cstring>
#include<unordered_map>using namespace std;const int N = 100000 , INF = 0x3f3f3f3f;
int t , n;
int pre[N] , in[N] , abs_pre[N];
int l[N] , r[N];
unordered_map<int , int>idx;
bool f = true;int build(int pl , int pr , int il , int ir)
{int root = pre[pl];int k = idx[abs(root)];if(il < k) l[abs(root)] = build(pl + 1 , k - il + pl , il , k - 1);if(ir > k) r[abs(root)] = build(k - il + pl + 1 , pr , k + 1 , ir);bool fa = (root < 0 && l[abs(root)] > 0 && r[abs(root)] > 0);if(root < 0 && !fa) f = false;return root;
}
vector<int>black;
void dfs(int u , int total)
{int root = abs(u);if(root == INF || u > 0) total ++;if(root == INF) {black.push_back(total);return ;}dfs(l[root] , total);dfs(r[root] , total);
}int main()
{cin >> t;while(t --){memset(pre , 0 , sizeof pre) , memset(in , 0 , sizeof in);memset(l , 0x3f , sizeof l) , memset(r , 0x3f , sizeof r);cin >> n;for(int i = 0;i < n;i ++) cin >> pre[i] , in[i] = abs(pre[i]);sort(in , in + n);for(int i = 0;i < n;i ++) idx[in[i]] = i;if(pre[0] < 0) {f = true;puts("No");continue;}int root = build(0 , n - 1 , 0 , n - 1);dfs(root , 1);for(int i = 0;i < black.size();i ++)if(black[i] != black[0]) f = false;if(f) puts("Yes");else puts("No");f = true , idx.clear() , black.clear();}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/660343.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C/C++ 07】词频统计

一、题目 读入一篇英文短文&#xff0c;去除介词、连词、冠词、副词、代词等非关键性单词后&#xff0c;统计每个单词出现的次数&#xff0c;并将单词按出现次数的降序和单词字符的升序进行显示5个单词。 二、算法 1. 通过<fstream>库创建fstream流对象&#xff0c;并从…

uniapp【组件封装】时间戳格式化为星期

组件 components/dos-week.vue <template><text>{{week}}</text> </template> <script>export default {props: {time: String},mounted(e) {this.week this.getWeek(Number(this.time))},data() {return {week: }},methods: {// 通过时间戳计…

美区或其他外区Appstore账号AppleID注册教程,简单快速,苹果必备!

▍前言 现在越来越多的APP在国区APPstore下架&#xff0c;如果想有更好的使用体验&#xff0c;不得不去外区下载APP&#xff0c;那就需要一个外区的apple id&#xff0c;注册也很简单&#xff0c;今天大鹏通过电脑ipad给大家注册一个&#xff0c;建议大家直接使用iPhone或者iPa…

python魔法函数[全面]

1、init 用于初始化对象的属性和状态 当创建一个对象时&#xff0c;Python会自动调用该对象的__init__方法。 这个方法用于初始化对象的属性和状态&#xff0c;是对象创建过程中的一个重要环节 2、new # 通常我们不需要重写__new__方法&#xff0c;除非我们正在进行一些非常…

好书推荐丨保姆级Midjourney教程,这本写给大家看的设计书闭眼入!

文章目录 写在前面好书推荐Part.1Part.2Part.3 粉丝福利写在后面 写在前面 在AI绘画界&#xff0c;有每日经典一问&#xff1a;“你今天用Midjourney画了啥&#xff1f;”晒作品成为重头戏。 小红书上关于Midjourney出的图片点赞数惊人。 reddit上的恶搞幽默图片热度居高不下…

GSM-TRIAL-21.04.9-VMware-Workstation.OVA安装教程,GreenBone虚拟机安装教程

将GSM-TRIAL-21.04.9-VMware-Workstation.ova用VMware打开 先设置好网络和内存&#xff1a; 1、打开虚拟机&#xff0c;显示&#xff1a;你的GSM还不能完全正常工作。您想现在完成设置吗? 点击yes 2、创建用户&#xff0c;一会儿登录网页要用&#xff0c;点击yes 3、创建用户…

指向 Data Member 的指针

看一下很简单的一个例子&#xff1a; #include <stdlib.h> #include <stdio.h> #include <malloc.h>class origin { public:virtual ~origin(){} public:int x; };int main() {origin A;printf("&origin::x %p, &A.x %p\n", &origi…

OpenGL查询对象 Query Objects

查询对象和异步查询(Query Objects and Asynchronous Queries) Query Objects&#xff08;查询对象&#xff09;是OpenGL中的一种机制&#xff0c;用于获取有关一系列GL命令处理过程的信息。这些信息可以包括&#xff1a; 绘图命令处理的图元数量。写入变换反馈缓冲区的图元数…

小黄鸭聊电脑(4)硬盘分区

小黄鸭聊电脑(4)硬盘分区 夜深人静&#xff0c;万籁俱寂&#xff0c;老郭趴在电脑桌上打盹&#xff0c;桌子上的小黄鸭和桌子旁的冰箱又开始窃窃私语…… 小黄鸭&#xff1a;冰箱大哥&#xff0c;上次你说的那个“分区”和“格式化”是什么意思&#xff1f; 冰箱&#xff1a;…

洛夫克拉夫特与文学中的超自然恐怖:前哥特时代

洛夫克拉夫特与文学中的超自然恐怖&#xff1a;前哥特时代 ![ 洛夫克拉夫特是美国恐怖、科幻与奇幻小说作家&#xff0c;尤以其怪奇小说著称&#xff0c;他在自己的一系列小说中开发出了克苏鲁神话体系。他的创作对后世恐怖小说创造影响深远&#xff0c;我们可以在许多当代文…

[leetcode] 21. 合并两个有序链表

文章目录 题目描述解题方法双指针遍历java代码 题目描述 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4]示例 2&#xff…

自动驾驶:Apollo如何塑造人类的未来出行

前言 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家&#xff1a;https://www.captainbed.cn/z ChatGPT体验地址 文章目录 前言1. 什么是自定义指令&#xff1f;2. Apollo中的自定义指令2.1 查询中的自定…

sqlalchemy——@listens_for

问&#xff1a;sqlalchemy如何实现&#xff1a;表中指定数据更新时&#xff0c;其time字段自动更新&#xff1f;答&#xff1a;使用listens_for 装饰器来注册事件监听器&#xff0c;确保在项目数据更新时触发相应的处理逻辑。 示例代码如下&#xff1a; # coding: utf-8 impo…

Vue2组件注册:全局组件和局部组件

在Vue 2 中&#xff0c;你可以使用全局注册和局部注册两种方式注册组件。以下是两种方式的示例&#xff1a; • 全局注册 全局注册的组件可以在整个应用中使用&#xff0c;适用于高频的通用组件。 // 在 main.js 或者入口文件中 import Vue from vue import App from ./App.v…

鸿蒙HarmonyOS——AVSession开发指导

AVSession开发指导 说明&#xff1a; AVSession的所有接口均为系统接口&#xff0c;其功能仅提供给系统应用使用。 会话接入端开发指导 基本概念 会话元数据AVMetadata: 媒体数据相关属性&#xff0c;包含标识当前媒体的ID(assetId)&#xff0c;上一首媒体的ID(previousAsset…

17. Spring Boot Actuator

17. Spring Boot Actuator Spring Boot执行器(Actuator)提供安全端点&#xff0c;用于监视和管理Spring Boot应用程序。 默认情况下&#xff0c;所有执行器端点都是安全的。 在本章中&#xff0c;将详细了解如何为应用程序启用Spring Boot执行器。 启用Spring Boot Actuator …

光纤熔接-热熔

实验教学日的及具体要求 目的 1.掌握室外光缆、皮线光缆的开剥方法。 2.掌握应用光纤切割刀制作光纤端面的方法 3.掌握光纤熔接的基本知识。 4.掌握光纤熔接机的使用方法及接续步骤。 任务 1.完成2芯光缆在终端盒内与尾纤的熔接 2.用激光笔完成光纤熔接检测。 …

如何使用mock.js实现接口测试的自动化?

Mock.js 基础用法介绍 Mock.js是一个常用于生成随机数据和拦截Ajax请求的JavaScript库。本文将介绍Mock.js的用法&#xff0c;包括安装和基础用法&#xff0c;在开始前我们可以看下看&#xff1a;了解 Mock.js 的语法规范。 安装 可以通过npm安装Mock.js&#xff1a; npm i…

Debezium发布历史94

原文地址&#xff1a; https://debezium.io/blog/2020/09/16/debezium-1-3-beta2-released/ 欢迎关注留言&#xff0c;我是收集整理小能手&#xff0c;工具翻译&#xff0c;仅供参考&#xff0c;笔芯笔芯. Debezium 1.3.0.Beta2 发布 2020 年 9 月 16 日 作者&#xff1a; Gu…

敏捷认证大热:PMI-ACP

你是否在寻找一个能让你在不断变化的职场环境中脱颖而出的认证&#xff1f;PMI-ACP正是你需要的&#xff01;这个由美国项目管理协会PMI颁发的认证&#xff0c;是全球敏捷项目管理领域的权威代表。无论你是希望转型到项目管理领域&#xff0c;还是想提升现有项目管理技能&#…