[C++ / Go] Counting the number of request of each type sandwich - O(n) time + O(1) space solution
Approach\n- Count the total number of requested sandwiches from students.\n- Iterate through each sandwich at the front:\n    - If there are still requests for 
# Approach\n- Count the total number of requested sandwiches from students.\n- Iterate through each sandwich at the front:\n    - If there are still requests for that type of sandwich, decrement the number of requests.\n    - Otherwise, return the number of requests for the other type of sandwich, as serving ends here.\n\n# Complexity\n- Time complexity: $O(n)$\n- Space complexity: $O(1)$\n\n# Code\n```C++ []\nclass Solution {\npublic:\n    int countStudents(vector<int>& students, vector<int>& sandwiches) {\n        vector<int> req(2, 0);\n        for (const int& student : students)\n            req[student]++;\n\n        for (const int& sandwich : sandwiches) {\n            if (req[sandwich] == 0)\n                return req[1 - sandwich];\n            else\n                req[sandwich]--;\n        }\n\n        return 0;\n    }\n};\n```\n```Go []\nfunc countStudents(students []int, sandwiches []int) int {\n    req := make([]int, 2)\n    for _, student := range students {\n        req[student]++\n    }\n\n    for _, sandwich := range sandwiches {\n        if req[sandwich] == 0 {\n            return req[1 - sandwich]\n        } else {\n            req[sandwich]--\n        }\n    }\n\n    return 0\n}\n```
['Counting', 'C++', 'Go']