QOJ.ac

QOJ

Time Limit: 5 s Memory Limit: 1024 MB Total points: 100 Difficulty: [show] Hackable ✓

#127. Stratégie de jeu de cartes

Statistics

Alice et Bob vont jouer à un jeu de cartes. Il y a $n$ cartes, chacune portant un entier inscrit dessus. Le jeu se déroule comme suit :

  1. Alice choisit un entier compris entre $a$ et $b$, inclus. Appelons cet entier $t$. Alice indique ensuite à Bob la valeur de $t$.
  2. Bob choisit $k$ cartes parmi les $n$ cartes. On calcule la somme des entiers inscrits sur les $k$ cartes choisies par Bob. Appelons cette somme $u$.

L'objectif d'Alice est de rendre $|t - u|$ aussi grand que possible et celui de Bob est de rendre $|t - u|$ aussi petit que possible. Avant la partie, Alice et Bob connaissent tous deux les valeurs de $n$, $k$, $a$ et $b$, ainsi que les entiers inscrits sur les cartes. Alice et Bob joueront tous deux de manière optimale. En particulier, Alice fera son choix en sachant que Bob minimisera certainement $|t - u|$ pour la valeur $t$ annoncée. De plus, supposons qu'Alice préfère choisir la plus petite valeur de $t$ si elle dispose de plusieurs choix tout aussi bons.

Votre tâche consiste à déterminer l'issue de la partie : la valeur de $t$ qu'Alice choisira et les $k$ cartes que Bob choisira pour ce $t$.

Entrée

L'entrée se compose de deux lignes représentant un seul cas de test. La première ligne contient quatre entiers $n$, $k$, $a$ et $b$ ($1 \le k \le n \le 600$, $0 \le a \le b \le 1.8 \cdot 10^5$). La seconde ligne contient $n$ entiers $x_1, \ldots, x_n$ ($0 \le x_i \le 300$), indiquant que $x_i$ est inscrit sur la $i$-ème carte.

Sortie

Affichez deux lignes : la première ligne doit contenir un entier représentant la valeur de $t$ qu'Alice choisira. La seconde ligne doit contenir $k$ entiers distincts compris entre $1$ et $n$, inclus, représentant les indices des cartes que Bob choisira. Si Bob dispose de plusieurs choix tout aussi bons, affichez l'un quelconque d'entre eux.

Exemples

Entrée 1

4 2 58 100
10 10 50 80

Sortie 1

75
2 3

Entrée 2

8 3 1300 1800
2 0 1 5 0 4 1 9

Sortie 2

1800
4 6 8

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.