If you put a checkpoint in one node of an SCC, every node in that SCC is covered (they can all reach each other).
So compress the graph into SCCs. Now you need one checkpoint per SCC. Pick the cheapest node in each SCC.
If an SCC has multiple nodes with the same minimum cost, count all possible ways to pick one of them. The total number of ways is the product of counts across all SCCs (mod if the problem requires it).