Examples
Examples
Try the starting example
- JSON Required skills [skill ID,required qualified headcount]
- [["A",2],["B",1],["C",1]]
- JSON Qualified coverage [skill ID,available person IDs]
- [["A",["P1","P2"]],["B",["P1"]],["C",[]]]
- Coverage and gaps
- [["A",2,0],["B",1,0],["C",0,1]]
- Single-person dependencies
- ["B"]
Try another scenario
- JSON Required skills [skill ID,required qualified headcount]
- [["A",2],["B",1],["C",1]]
- JSON Qualified coverage [skill ID,available person IDs]
- [["A",["P1","P2"]],["B",["P1","P3"]],["C",["P4"]]]
- Coverage and gaps
- [["A",2,0],["B",2,0],["C",1,0]]
- Single-person dependencies
- ["C"]
Calculation method
Calculation method
Coverage and gaps
J([[r[0],len(dict(b).get(r[0],[])),max(0,r[1]-len(dict(b).get(r[0],[])))] for r in a])
Single-person dependencies
J([r[0] for r in a if len(dict(b).get(r[0],[]))==1])
Symbols and units
- a
- JSON Required skills [skill ID,required qualified headcount]
- b
- JSON Qualified coverage [skill ID,available person IDs]
Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.
Assumptions & limits
Assumptions & limits
- Independent skill-headcount audit; a person may count toward several skills, so simultaneous shift coverage requires a separate assignment model. Supported limits: All numeric inputs must be finite. Only the explicitly described mathematical scenario is supported.
Are these inputs private?
These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.