Markdown言語で、プロジェクトが何をしているのかの説明を書く：


サイクリストの目標は、可能な限り短い時間で各ステージを終了し、サイクリストチャンピオンシップで優勝し、チームがチームチャンピオンシップに勝つことです。

「DPサイクリング」プロジェクトのメインクラスの説明

これらの特性は、自転車でサイクリストのパフォーマンスにさまざまな方法に影響を与えます。したがって、1つの段階で自転車でサイクリストに到達できる速度は、この値に反比例します。つまり、難易度が大きいほど、自転車のサイクリストがその段階で到達できる速度は少なくなります。この値は、各サイクリストの計算に使用する必要があります。

サイクリストが自転車で必要とする議事録に直接影響し、レースを終了します。つまり、ある段階でより高い距離で、自転車を持つサイクリストがその段階を終えるために必要なサイクリストよりも最も必要な時間です。

これらの特性は、サイクリストのパフォーマンスと各段階で使用される自転車にさまざまな方法に影響を与えます。ステージ中に自転車を持つサイクリストによって達成される速度は、サイクリストのスキルに直接依存し、この重量フィールドとステージの難易度に反比例することに留意してください。

自転車クラスの機能

これらの2つのタイプは、互いに排他的です。つまり、通常の自転車型オブジェクト、自転車型オブジェクト、または自転車型オブジェクトがありますが、一度にいくつかのタイプはありません。

Bicycletarapidaクラス機能

特定のサイクリストが特定の段階で使用すると、速度を計算できる必要があります。特定のサイクリストが特定の段階で使用する場合、ステージを完了するために必要な時間を提供できる必要があります。

サイクリングクラス機能

チームが割り当てられた自転車を受け取り、レースとキャリアの間でそれを変えることができる必要があります。任意の段階で得られた結果に関する情報を管理および提供できる必要があります。それが参加した段階の総数を返すことができなければなりません。それが終わった、それがなんとか終了した段階に蓄積された合計時間、そしてその場合、それが放棄した段階です。サイクリストが1つの段階で自転車を使用できるように、必要な機能を提供する必要があります。

サイクリストのスキルを計算できる必要があります。このスキルは、あなたの能力とサイクリストの種類に依存します。サイクリストの種類の説明と、そのスキルを計算するための各タイプのサイクリストの具体的な式を以下に説明します。

これらの3つのタイプは、互いに排他的であり、サイクリングオブジェクトを作成できる唯一のタイプです。つまり、サイクリング、経験豊富なサイクリスト、サイクリングではないサイクリングオブジェクトを作成する可能性はありません。

チーム機器の機能

チームがチャンピオンシップ中にこれらの基準を変更できることも考慮している比較基準に従って、サイクリストと自転車を注文できる必要があります。サイクリストが蓄積した合計時間に関する情報を提供できる必要があります。割り当てられた自転車と一緒に放棄することなく、各段階でサイクリストを送ることができなければなりません。この構造は、機器の比較基準に従って注文されます。これらは、ランナーによって蓄積された合計分など、その1つまたは複数の特性の使用に基づいて、昇順または下降方法で適用できます。。

サイクリストのカレラ、特定のキャリアで競うサイクリストとの構造。この構造は、エネルギー、名前、蓄積された分、名前などの1つ以上の特性の使用に基づいて、昇順または降順を適用できるサイクリストの比較の基準に従って順序付けられたままです。。この注文は、チームごとに完全に異なる場合があり、チャンピオンシップ中に変更される可能性さえあります。

残りがすでに放棄されているため、競争するサイクリストは1人だけです。

つまり、サイクリストやチームはチャンピオンシップで優勝していません。
あなたが持っているサイクリストから送信された各チームを要求します。組織には、サイクリングデータ構造で受け取った順序で、各サイクリストと割り当てられた自転車を含めます。

提供された初期データ

同じ開始データでシミュレーションを実行できるように、2つのファイルに初期テストデータが提供されます
Escribe en lenguaje markdown una descripción de lo que va el proyecto:


El objetivo de los Ciclistas será acabar cada Etapa con el menor tiempo posible y así tratar de ganar el campeonato de Ciclistas y que sus Equipos ganen el campeonato por Equipos.

Descripción de las clases principales existentes en el proyecto «DP Ciclismo»

Estas características van a influir de diversas formas en el rendimiento del Ciclista con su Bicicleta. Así, la velocidad que es capaz de alcanzar un Ciclista con un Bicicleta en una Etapa depende inversamente de este valor. Es decir, a mayor dificultad, menor será la velocidad que el Ciclista con su Bicicleta pueden alcanzar en esa Etapa. Este valor se deberá usar para el cómputo de la velocidad de cada Ciclista.

Influye de forma directa en los minutos que necesita un Ciclista con su Bicicleta para finalizar la carrera. Es decir, a mayor distancia en una Etapa, mayor será el tiempo necesario que el Ciclista con su Bicicleta necesita para finalizar esa Etapa.

Estas características van a influir de diversas formas en el rendimiento del Ciclista y la Bicicleta que usa en cada Etapa. Hay que tener en cuenta que la velocidad alcanzada por un Ciclista con una Bicicleta durante una Etapa dependerá directamente de la habilidad del Ciclista e inversamente de este campo peso y de la dificultad de la Etapa.

Funcionalidad de la clase Bicicleta

Estos dos tipos serán excluyentes entre sí. Es decir, tendremos objetos de tipo Bicicleta normal, objetos de tipo BicicletaRapida u objetos de tipo BicicletaPrototipo pero no de varios tipos a la vez.

Funcionalidad de la clase BicicletaRapida

Debe ser capaz de calcular su velocidad cuando es usada por un Ciclista en particular en una Etapa en concreto. Debe ser capaz de proporcionar el tiempo necesario para terminar la Etapa cuando es usada por un Ciclista en particular en una Etapa concreta.

Funcionalidad de la clase Ciclista

Debe ser capaz de recibir la Bicicleta que le asigne su Equipo y poder cambiarla entre carrera y carrera. Debe ser capaz de gestionar y proporcionar información sobre el resultado obtenido en cualquier Etapa. Debe ser capaz de devolver el número total de Etapas en las que ha participado, las que ha terminado, total de tiempo acumulado en las etapas que consiguió terminar, y, su caso, la Etapa en la que abandonó. Debe proporcionar la funcionalidad necesaria para que el Ciclista pueda usar una Bicicleta en una Etapa.

Debe ser capaz de calcular la destreza de un Ciclista. Esta destreza dependerá de su habilidad y del tipo de Ciclista que sea. La explicación sobre los tipos de Ciclista y la fórmula concreta de cada tipo de Ciclista para calcular su destreza se explica a continuación.

Estos tres tipos serán excluyentes entre sí y de los únicos que se pueden crear objetos de tipo Ciclista. Es decir, no habrá la posibilidad de crear objetos de tipo Ciclista que no sean de tipo CiclistaNovato, CiclistaExperimentado o CiclistaEstrella.

Funcionalidad de la clase Equipo

Debe ser capaz de ordenar sus Ciclistas y sus Bicicletas de acuerdo a los criterios de comparación que tenga el Equipo teniendo en cuenta además que dichos criterios podrían ser modificados durante el campeonato. Debe ser capaz de proporcionar información sobre el total de tiempo acumulado por sus Ciclistas. Debe ser capaz de enviar en cada Etapa a sus Ciclistas sin abandonar junto con las Bicicletas asignadas. Esta estructura se mantendrá ordenada de acuerdo a un criterio de comparación de Equipos, que se podrá aplicar de forma ascendente o descendente, basado en el uso de una o varias de sus características como, nombre, total de minutos acumulados por sus corredores, etc. .

ciclistasCarrera, estructura con los Ciclistas que van a competir en una determinada carrera. Esta estructura se mantendrá ordenada de acuerdo a un criterio de comparación de Ciclistas, que se podrá aplicar de forma ascendente o descendente, basado en el uso de una o varias de sus características como energía, nombre, total de minutos acumulados, nombre, etc. . Dicho orden podrá ser completamente distinto para cada Equipo e incluso podría ser modificado durante el campeonato.

Solo queda un Ciclista para competir porque el resto ya ha abandonado.

Es decir, ningún Ciclista ni Equipo habrá ganado el campeonato.
Solicitará en cada turno a cada Equipo que le envíe los Ciclistas que tiene. La Organización irá incluyendo a cada Ciclista, junto con su Bicicleta asignada, en el orden recibido en la estructura de datos Ciclistas.

Datos iniciales proporcionados

Se proporcionarán dos ficheros con unos datos iniciales de prueba para poder ejecutar la simulación con los mismos datos de partida