A console-based application that allocates academic branches to students based on their rank, preferences, and seat availability.
The system simulates a real-world college counseling process using efficient data structures in C++.
During college admissions, students are allocated branches based on merit (rank) and their preferred choices, subject to seat availability.
This project models that process by prioritizing higher-ranked students and assigning them the best available branch from their preference list.
- Rank-based student processing using a priority queue
- Branch allocation based on student preferences
- Seat availability tracking for each branch
- Input validation for contact number and email
- Summary view of final branch allocation
- Candidate list displayed in rank order
- Object-Oriented Programming (OOP)
- Priority Queue (Heap) for rank-based allocation
- STL Containers (
vector,priority_queue) - Custom comparator for student ranking
- Input validation using regex and standard algorithms
branch-allocation-system/ │ ├── Innovative.cpp ├── README.md
- Branches and their seat capacities are initialized.
- Student data is collected along with branch preferences.
- Students are inserted into a priority queue based on rank.
- The highest-ranked student is processed first.
- The system assigns the first available branch from the student’s preference list.
- Allocation continues until all students are processed.
Tanish Solanki GitHub: https://github.com/Tanish-Solanki