>These salaries represent value produced to company and cannot be raised.
This means the company needs one employee at minimum. If it loses that employee it will not produce value. Therefore it is in the best interest of the company to hire two people, the first position is compensated as much as possible, the second is compensated one dollar more than the lowest competing position that got filled.
Thus, the top offer becomes $899999 and the lowest offer becomes $100001. However, there is a problem. We have 12 positions but only 10 people. The companies will have to outbid each other on the lowest position until all salaries hit market rate, which is the average of the top ten original positions (6 times 1 mill 4 times 100k) that market rate is $640k for everyone.
The 100k jobs never get filled and they shouldn't get filled ever, because a lack of customer demand will never be a shortage. (the assumption in your scenario is that training costs exceed $1000k and therefore it never makes sense to increase the labor pool)
The mistake you made in your scenario is that you did not mention price controls enforced by the government. In a free market companies will negotiate and adjust their salary. The lack of training is acceptable for a thought experiment though.