CF1310B.Double Elimination

省选/NOI-

通过率:0%

时间限制:2.00s

内存限制:512MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

The biggest event of the year – Cota 2 world championship "The Innernational" is right around the corner. 2n2^n teams will compete in a double-elimination format (please, carefully read problem statement even if you know what is it) to identify the champion.

Teams are numbered from 11 to 2n2^n and will play games one-on-one. All teams start in the upper bracket.

All upper bracket matches will be held played between teams that haven't lost any games yet. Teams are split into games by team numbers. Game winner advances in the next round of upper bracket, losers drop into the lower bracket.

Lower bracket starts with 2n−12^{n-1} teams that lost the first upper bracket game. Each lower bracket round consists of two games. In the first game of a round 2k2^k teams play a game with each other (teams are split into games by team numbers). 2k−12^{k-1} loosing teams are eliminated from the championship, 2k−12^{k-1} winning teams are playing 2k−12^{k-1} teams that got eliminated in this round of upper bracket (again, teams are split into games by team numbers). As a result of each round both upper and lower bracket have 2k−12^{k-1} teams remaining. See example notes for better understanding.

Single remaining team of upper bracket plays with single remaining team of lower bracket in grand-finals to identify championship winner.

You are a fan of teams with numbers a1,a2,...,aka_1, a_2, ..., a_k. You want the championship to have as many games with your favourite teams as possible. Luckily, you can affect results of every championship game the way you want. What's maximal possible number of championship games that include teams you're fan of?

一年一度的最大盛事——Cota 2 世界锦标赛“国际邀请赛”(The Innernational)即将到来。共有 2n2^n 支队伍将以双败淘汰制(请务必仔细阅读本题题面,即使你已了解该赛制)进行角逐,最终决出冠军。

队伍编号为 11 至 2n2^n,将进行一对一的对战。所有队伍均从胜者组(upper bracket)开始比赛。

所有胜者组的比赛均在尚未输过任何一场比赛的队伍之间进行。队伍按编号两两配对进行比赛。每场比赛的胜者晋级胜者组下一轮,败者则落入败者组(lower bracket)。

败者组起始于首轮胜者组比赛中落败的 2n−12^{n-1} 支队伍。败者组的每一回合包含两场子比赛。在某回合的第一场子比赛中,2k2^k 支队伍两两配对(按队伍编号配对)进行比赛;其中 2k−12^{k-1} 支失败的队伍将直接被淘汰出锦标赛,而 2k−12^{k-1} 支获胜的队伍则与本轮胜者组中刚刚被淘汰的 2k−12^{k-1} 支队伍进行第二场子比赛(同样按队伍编号配对)。因此,每轮结束后,胜者组与败者组各自均剩余 2k−12^{k-1} 支队伍。详见样例说明以加深理解。

最后,胜者组中唯一剩余的一支队伍将与败者组中唯一剩余的一支队伍在总决赛(grand-finals)中对决,以决出锦标赛冠军。

你是编号为 a1,a2,…,aka_1, a_2, \dots, a_k 的若干支队伍的粉丝。你希望本届锦标赛中,包含你所支持队伍的比赛场数尽可能多。幸运的是,你可以任意决定每一场锦标赛比赛的结果。那么,最多可能有多少场锦标赛比赛包含你所支持的队伍?

输入格式

First input line has two integers n,kn, k — 2n2^n teams are competing in the championship. You are a fan of kk teams (2≤n≤17;0≤k≤2n2 \le n \le 17; 0 \le k \le 2^n).

Second input line has kk distinct integers a1,…,aka_1, \ldots, a_k — numbers of teams you're a fan of (1≤ai≤2n1 \le a_i \le 2^n).

第一行输入包含两个整数 n,kn, k —— 共有 2n2^n 支队伍参加锦标赛。你是其中 kk 支队伍的粉丝(2≤n≤17; 0≤k≤2n2 \le n \le 17;\ 0 \le k \le 2^n)。

第二行输入包含 kk 个互不相同的整数 a1,…,aka_1, \ldots, a_k —— 你所支持的队伍编号(1≤ai≤2n1 \le a_i \le 2^n)。

输出格式

Output single integer — maximal possible number of championship games that include teams you're fan of.

输出一个整数——包含你支持的球队的冠军赛的最大可能场数。

输入输出样例

  • 输入#1

    3 1
    6

    输出#1

    6
  • 输入#2

    3 3
    1 7 8

    输出#2

    11
  • 输入#3

    3 4
    1 3 5 7

    输出#3

    14

说明/提示

On the image, each game of the championship is denoted with an English letter (aa to nn). Winner of game ii is denoted as WiWi, loser is denoted as LiLi. Teams you're a fan of are highlighted with red background.

In the first example, team 66 will play in 6 games if it looses the first upper bracket game (game cc) and wins all lower bracket games (games h,j,l,mh, j, l, m).

In the second example, teams 77 and 88 have to play with each other in the first game of upper bracket (game dd). Team 88 can win all remaining games in upper bracket, when teams 11 and 77 will compete in the lower bracket.

In the third example, your favourite teams can play in all games of the championship.

在图中,锦标赛的每场比赛均用一个英文字母(aa 至 nn)表示。第 ii 场比赛的胜者记为 WiWi,败者记为 LiLi。您所支持的队伍以红色背景高亮显示。

在第一个示例中,若队伍 66 在上半区首场比赛(即比赛 cc)中失利,但随后赢得所有下半区的比赛(即比赛 h,j,l,mh, j, l, m),则队伍 66 将共参加 6 场比赛。

在第二个示例中,队伍 77 与 88 需在上半区首场比赛(即比赛 dd)中相互对阵。若队伍 88 赢得上半区剩余的所有比赛,则队伍 11 与 77 将在下半区展开对决。

在第三个示例中,您所喜爱的队伍可参与锦标赛全部场次的比赛。

输入解题思路,AI测评打分。不知道怎么写?

首页