C++ Easy Peasy Solution with comments
Intuition\n Describe your first thoughts on how to solve this problem. \n\n# Approach\n Describe your approach to solving the problem. \nThe function maxDivisor
# Intuition\n<!-- Describe your first thoughts on how to solve this problem. -->\n\n# Approach\n<!-- Describe your approach to solving the problem. -->\nThe function maxDivisor takes in two vectors nums and divisors. It first initializes an unordered map scores to map each divisor to its     score. It then loops through each divisor in divisors, counts its score by looping through each number in nums, and updates max_score and      max_divisor if the score is greater than max_score or equal to max_score and the divisor is less than max_divisor. Finally, it returns       max_divisor\n# Complexity\n- Time complexity: O(N^2)\n<!-- Add your time complexity here, e.g. $$O(n)$$ -->\n\n\n\n# Code\n```\nclass Solution {\npublic:\n    \n    int maxDivScore(vector<int>& nums, vector<int>& divisors) {\n        \n        unordered_map<int, int> scores; // map each divisor to its score\n        \n        int max_score = 0;\n        int max_divisor = divisors[0];\n        \n        for (int divisor : divisors) \n        {\n            scores[divisor] = 0;\n            \n            for (int num : nums) \n            {\n                if (num % divisor == 0) \n                    scores[divisor]++;\n            }\n            \n            if (scores[divisor] > max_score || (scores[divisor] == max_score && divisor < max_divisor)) \n            {\n                max_score = scores[divisor];\n                max_divisor = divisor;\n            }\n        }\n        \n        return max_divisor;\n    }\n};\n```
['C++']