At my university there are not enough places in every class to accommodate every student. The scheme the university set up to solve this problem is as follows: Each student gets $1000$ points per semester which they can place on a lecture/class. After a certain time you are prohibited from placing points on a class - the university now ranks students who placed points on this particular class. The more points placed, the higher up a student is on this list. If there are $k$ spots in the class, the first $k$ students get in. The information each student has is the number of spots $n$ in the class and how many other students have already placed points $m$ (one can also place 0 points and be included in $m$). One cannot see how many points others have placed. Each student can change the amount of points placed as long as the deadline is not yet passed. There are different deadlines for different classes.
There is a subset $A$ of classes I am interested in. Out of these classes I can take at most $q$ simultaneously. My goal is thus to minimize the difference between $q$ and the actual number of classes that I get a spot in.
The best strategy for the trivial case $q = 1$ is to place all $1000$ points on one class.
What is the ideal strategy for the general case?
I am not only interested in a strategy from a practical point of view, but also what part of game theory deals with tasks like this one.