I was recently solving 1316E - Team Building problem but I couldn't understand why we sorted the audience array. Can anyone help?

# | User | Rating |
---|---|---|

1 | tourist | 3803 |

2 | jiangly | 3707 |

3 | Benq | 3627 |

4 | ecnerwala | 3584 |

5 | orzdevinwang | 3573 |

6 | Geothermal | 3569 |

6 | cnnfls_csy | 3569 |

8 | Radewoosh | 3542 |

9 | jqdai0815 | 3532 |

10 | gyh20 | 3447 |

# | User | Contrib. |
---|---|---|

1 | awoo | 163 |

2 | maomao90 | 160 |

3 | adamant | 157 |

4 | maroonrk | 155 |

5 | -is-this-fft- | 150 |

6 | Petr | 148 |

6 | SecondThread | 148 |

8 | atcoder_official | 147 |

9 | TheScrasse | 145 |

9 | nor | 145 |

I was recently solving 1316E - Team Building problem but I couldn't understand why we sorted the audience array. Can anyone help?

↑

↓

Codeforces (c) Copyright 2010-2024 Mike Mirzayanov

The only programming contests Web 2.0 platform

Server time: Jul/14/2024 23:24:50 (i1).

Desktop version, switch to mobile version.

Supported by

User lists

Name |
---|

I think it's because that the total number of people is not $$$n$$$.

So choosing audience is done greedily.. just pick the ones with highest $$$a_i$$$.

This way you don't have to add another dimension $$$(the \space number \space of \space audience)$$$ to your $$$dp$$$ state.

Or as the Tutorial says:

SpoilerIf we don't choose $$$i$$$ as a player, then we can take him as an audience member or not take him at all. I claim that if the number of audience members chosen till now $$$ \lt$$$ $$$k$$$ , then we must select $$$i$$$ as an audience member , We can prove this. If we don't select $$$i$$$ as audience, we will need to select some $$$j$$$ ($$$j \gt i$$$ ), strength in that case will include $$$a_j$$$ but not $$$a_i$$$ , but as $$$a_i \ge a_j$$$ , it is always better to select $$$i$$$ .

iam down