Leetcode—1279. 红绿灯路口【简单】Plus(多线程)
2024每日刷题(186)
Leetcode—1279. 红绿灯路口
C++实现代码
class TrafficLight {
public:
TrafficLight() {
}
void carArrived(
int carId, // ID of the car
int roadId, // ID of the road the car travels on. Can be 1 (road A) or 2 (road B)
int direction, // Direction of the car
function<void()> turnGreen, // Use turnGreen() to turn light to green on current road
function<void()> crossCar // Use crossCar() to make car cross the intersection
) {
lock_guard<std::mutex> loc(mtx);
if(roadId != curRoadId) {
curRoadId = roadId;
turnGreen();
}
crossCar();
}
private:
mutex mtx;
int curRoadId = 1;
};
运行结果
之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!