Simple cpp solution with detailed explanation.
\n    vector<int> mostVisited(int n, vector<int>& rounds) {\n        //Using a map to record number of times a sector is visited.\n        //maxVisited varible 
```\n    vector<int> mostVisited(int n, vector<int>& rounds) {\n        //Using a map to record number of times a sector is visited.\n        //maxVisited varible keep highest visit count for any sector.\n        int maxVisited = 0;\n        vector<int> mp(n+1, 0);\n        vector<int> res;\n        \n        for(int i = 0; i < rounds.size() - 1; i++)\n        {\n            /*\n              In each iteration, we start with the current sector in round[i] and visit will the all the consecutive sectors\n              cyclically (mod n) till we reach the sector in round[i+1].\n              \n              Whenever we visit any sector during this iteration, we increment its visit count by 1.\n              Parallely we keep track of highest visit count in maxVisited variable.\n            */\n            int start = rounds[i] % n, end = rounds[i+1] % n;\n            \n            while(start != end)\n            {\n                if(start == 0)\n                {\n                    mp[n]++;\n                    maxVisited = mp[n] > maxVisited ? mp[n] : maxVisited;\n                }\n                else\n                {\n                    mp[start]++;\n                    maxVisited = mp[start] > maxVisited ? mp[start] : maxVisited;\n                }\n                \n                start = (start + 1) % n;\n            }\n        }\n        //Increment the count for last visited sector \n        mp[rounds.back()]++;\n        maxVisited = mp[rounds.back()] > maxVisited ? mp[rounds.back()] : maxVisited;\n        \n        //Get most visited sectors.\n        for(int i = 1; i < mp.size(); i++)\n        {\n            if(mp[i] == maxVisited)\n                res.push_back(i);\n        }\n        return res;\n    }\n```
[]