This problem is stupid
\nclass DiningPhilosophers {\npublic:\n    DiningPhilosophers() {\n    }\n    std::mutex m;\n    void wantsToEat(int philosopher,\n                    function<
```\nclass DiningPhilosophers {\npublic:\n    DiningPhilosophers() {\n    }\n    std::mutex m;\n    void wantsToEat(int philosopher,\n                    function<void()> pickLeftFork,\n                    function<void()> pickRightFork,\n                    function<void()> eat,\n                    function<void()> putLeftFork,\n                    function<void()> putRightFork) {\n        lock_guard lk(m);\n        pickLeftFork();\n        pickRightFork();\n        eat();\n        putRightFork();\n        putLeftFork();\t\n    }\n};\n```\n
[]