A player has a unique PID, and a list of skill levels:
Type player struct {
PID int
skills []int
}
E.g.
p1 = player {PID: 100, skills: [0,3,6,6,5,1,6,12,1,20]}
p2 = player {PID: 200, skills: [5,8,3,4,2,4,5,1,7,0]}
p3 = player {PID: 300, skills: [0,0,0,0,0,0,0,0,0,0]}
p4 = player {PID: 400, skills: [20,0,0,0,0,20,0,0,0,0]}
Each player has the same number of skills, and max skill level is 20
A gourp is a array of players, and given N is the number of players in the same group, each group will have exact N players, and N can be devided by given number of players.
A train(skill_index, group) function, it takes a skill index (int) and a group ([]player). It will increase the skill level of skill_index by 1 for all players in group, unless the skill level for the player is at max value 20.
Say if group = [p1,p2,p3,p4], train(0,group) will increas p1,p2,p3 first skill level by 1, while p4 will remain the same, since it’s at max value
Given a number M, which indicates how many times train fucntion can be called for each group.
What is the total max skill level increase (the sum of all players skill level increament) can be gained with given N and M?