Diferente pentru problema/robot1 intre reviziile #1 si #11

Diferente intre titluri:

robot1
Robot1

Diferente intre continut:

== include(page="template/taskheader" task_id="robot1") ==
Poveste şi cerinţă...
Studenţii Facultăţii de Informatică din cadrul Universităţii din Cluj, au conceput roboţi care şterg praful, plantează copaci, pun gresie, servesc masa, etc.
Botezat „Rosie“, robotul care şterge praful are două braţe (S-stâng şi D-drept) pe care sunt montate nişte perii ce sunt învârtite cu ajutorul unui motoraş. Braţul robotului este programat să se poziţioneze în dreptul unei suprafeţe, periile învârtite de motoraş parcurg suprafaţa ştergând în acest fel praful de pe ea.
Pentru o demonstraţie, robotul este aşezat în faţa unei etajere cu $N$ rafturi numerotate în ordine, de jos în sus, cu numere de la $1$ la $N$. Braţul stâng $(S)$ al robotului este poziţionat în dreptul primului raft iar celălat braţ $(D)$ în dreptul celui de-al $K$-lea raft.
 
Pentru ştergerea prafului, deplasarea braţelor robotului este programată astfel:
 
* fiecare braţ se deplasează {**doar de jos în sus**}, de la raftul în dreptul căruia este poziţionat la un moment dat, **la raftul situat imediat deasupra acestuia**;
 
* din minut în minut, **se deplasează doar unul din braţe**, se poziţionează în dreptul raftului corespunzător şi şterge praful de pe acesta;
 
* dacă **ambele braţe ajung în dreptul aceluiaşi raft**, atunci robotul se blochează şi demonstraţia se încheie fără succes.
 
h2. Cerinţă
 
Ştiind că demonstraţia se termină în momentul în care **braţul drept** $(D)$ **al robotului a ajuns pe ultimul raft al etajerei**, scrieţi un program care calculează numărul $M$ de modalităţi diferite în care poate fi programat robotul pentru a asigura succesul demonstraţiei.
Programul va afişa **restul împărţirii** numărului $M$ la **64997**.
h2. Date de intrare
Fişierul de intrare $robot1.in$ ...
Fişierul de intrare $robot1.in$ conţine pe prima linie două numere naturale $N$ şi $K$, în această ordine, separate printr-un spaţiu, având semnificaţia din enunţ.
h2. Date de ieşire
În fişierul de ieşire $robot1.out$ ...
În fişierul $robot1.out$ se va scrie pe prima linie un singur număr natural ce reprezintă restul împărţirii numărului $M$ la **64997**.
h2. Restricţii
* $... ≤ ... ≤ ...$
* $2 ≤ K ≤ N ≤ 2800$
* cele două braţe NU se pot mişca simultan;
* un braţ poate fi programat să se deplaseze în dreptul unui raft de pe care a fost deja şters praful;
* un mod de programare al robotului este definit printr-o succesiune de deplasări ale braţelor: $S$, $D$
* două moduri de programare ale robotului sunt diferite dacă acestea au cel puţin o deplasare $S$ sau $D$ diferită.
h2. Exemplu
table(example). |_. robot1.in |_. robot1.out |
| This is some
  text written on
  multiple lines.
| This is another
  text written on
  multiple lines.
| 5 2
| 5
|
h3. Explicaţie
...
Sunt $5$ modalităţi de programare a robotului pentru ca braţul drept să ajungă la ultimul raft:
modalitatea $1$:   $D$: $2→3$(deplasare de la raftul $2$ la raftul $3$)   $D$: $3→4$    $D$: $4→5$
modalitatea $2$:   $D$: $2→3$   $S$: $1→2$     $D$: $3→4$   $D$: $4→5$
modalitatea $3$:   $D$: $2→3$   $S$: $1→2$     $D$: $3→4$   $D$: $2→3$    $D$: $4→5$
modalitatea $4$:   $D$: $2→3$   $D$: $3→4$     $S$: $1→2$   $D$: $4→5$
modalitatea $5$:   $D$: $2→3$   $D$: $3→4$     $S$: $1→2$   $D$: $2→3$    $D$: $4→5$
== include(page="template/taskfooter" task_id="robot1") ==

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.