Leetcode—1117. H2O 生成【中等】(多线程)

embedded/2024/10/24 6:51:04/

2024每日刷题(182)

Leetcode—1117. H2O 生成

在这里插入图片描述

C++实现代码

class H2O {
public:H2O() {sem_init(&hydrogenSem, 0, 1);sem_init(&oxygenSem, 0, 0);}~H2O() {sem_destroy(&hydrogenSem);sem_destroy(&oxygenSem);}void hydrogen(function<void()> releaseHydrogen) {sem_wait(&hydrogenSem);++n;// releaseHydrogen() outputs "H". Do not change or remove this line.releaseHydrogen();if(n % 2 == 0) {sem_post(&oxygenSem);} else {sem_post(&hydrogenSem);}}void oxygen(function<void()> releaseOxygen) {sem_wait(&oxygenSem);// releaseOxygen() outputs "O". Do not change or remove this line.releaseOxygen();sem_post(&hydrogenSem);}
private:int n = 0;sem_t hydrogenSem;sem_t oxygenSem;
};

运行结果

在这里插入图片描述

之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!


http://www.ppmy.cn/embedded/130014.html

相关文章

AnaTraf | 网络性能监控系统NPM:提升网络性能与业务连续性

AnaTraf 网络性能监控系统NPM | 全流量回溯分析 | 网络故障排除工具 网络系统非常复杂&#xff0c;管理和维护它们也越来越具有挑战性。为了确保网络性能和业务的持续稳定运行&#xff0c;IT运维团队需要对网络进行实时监控、优化和快速排查故障。本文将围绕网络性能监控系统&…

Kafka、Kafka Streams、Drools、Redis 和分布式数据库的风控系统程序

由于实时风控系统难度较大&#xff0c;集成框架设计各个单位均有特点&#xff0c;快速建立一个通用性较强&#xff0c;学习、实施和使用成本较低的框架尤其重要。 提供一个简化的 Java 程序示例&#xff0c;演示如何将 Kafka 消息中间件、Kafka Streams 计算引擎、Drools 规则…

Python画笔案例-085 绘制 3D效果文字

1、绘制3D效果文字 通过 python 的turtle 库绘制 3D效果文字,如下图: 2、实现代码 绘制 3D效果文字,以下为实现代码: """3D效果文字.py """ import turtle# 给Turtle类增加addx和addy方法 turtle.Turtle.addx = lambda self,dx

MySQL--mysql的安装

1.Linux上mysql的安装: Ubuntu下: (1)安装前首先切换到管理员身份:sudo su (2)然后执行命令:apt install mysql-server (注意:装的是服务器端,客户端自动就安装了) (3)执行过程中按y; 2.Mysql初始化配置 注意,一定是sudo su,必须是管理员才能进行Mysql的初始化设置; 初始化…

React Native 项目使用Expo模拟器运行iOS和Android

iOS没有连接设备&#xff1a; 确保你已经用 USB 线将你的 iOS 设备连接到了你的 Mac。 设备未信任&#xff1a; 如果你的设备是第一次连接到 Mac&#xff0c;可能需要在设备上信任这台计算机。通常&#xff0c;当你连接设备时&#xff0c;设备上会弹出一个对话框&#xff0c;…

【2024】【字节青训营】:字节青训营入营测试题——Java版本(已提交通过)

目录 简单题目 计算x到y的最小步数 环状 DNA 序列的最小表示法 Base32 解码和编码 打点计时器 兔群繁殖之谜 完美整数 找出整数数组中占比超过 一半 的数 找出最长的神奇数列 找单独的数 字符串最短循环字串 二进制反码转换问题 中等题目 简单四则运算 数字翻译…

TensorFlow面试整理-TensorFlow 基础概念

在学习和准备 TensorFlow 时,了解基础概念是至关重要的。以下是 TensorFlow 的一些核心基础概念: 1. Tensor (张量) ● 定义:张量是 TensorFlow 中的核心数据结构。它是一个多维数组,可以表示标量、向量、矩阵以及更高维的数组。张量在数学上与矩阵非常相似,但可以具有任意…

2024年9月 GESP CCF C++三级编程能力等级考试认证真题

2024.09 GESP CCF C三级编程能力等级考试认证真题 1 单选题&#xff08;每题 2 分&#xff0c;共 30 分&#xff09; 第 1 题 下列代码中&#xff0c;输出结果是&#xff08; &#xff09; #include<iostream> using namespace std; int main() { double a0.9; …