Diferente pentru problema/transform2 intre reviziile #2 si #5

Diferente intre titluri:

transform2
Transform2

Diferente intre continut:

h2. Date de ieşire
Fişierul $transform2.out$ va conţine pe fiecare linie câte o operaţie de interschimbare a două linii sau două coloane, codificată printr-un triplet $ch x y$ format dintr-un caracter $ch$ şi două numere naturale $x$ şi $y$ separate prin câte un spaţiu. Valoarea lui $ch$ de fiecare dată poate fi doar $L$ , $C$ sau $0$. Dacă valoarea lui $ch$ este egală cu $L$, atunci se vor interschimba liniile $x$ şi $y$ în matricea $B$. Dacă valoarea lui $ch$ este egală cu $C$, atunci se vor interschimba coloanele $x$ şi $y$ în matricea $B$. Ultimul triplet de valori introdus în fişierul de ieşire va fi $0 0 0$ reprezentând terminarea acţiunii.
Fişierul $transform2.out$ va conţine pe fiecare linie câte o operaţie de interschimbare a două linii sau două coloane, codificată printr-un triplet $ch x y$ format dintr-un caracter $ch$ şi două numere naturale $x$ şi $y$ separate prin câte un spaţiu. Valoarea lui $ch$ de fiecare dată poate fi doar $'L'$ , $'C'$ sau $'0'$. Dacă valoarea lui $ch$ este egală cu $'L'$, atunci se vor interschimba liniile $x$ şi $y$ în matricea $B$. Dacă valoarea lui $ch$ este egală cu $'C'$, atunci se vor interschimba coloanele $x$ şi $y$ în matricea $B$. Ultimul triplet de valori introdus în fişierul de ieşire va fi $'0 0 0'$ reprezentând terminarea acţiunii.
h2. Restricţii
* $1 ≤ N ≤ 80000$
* Pentru un program care se încadrează în timpul de execuţie, punctajul acordat depinde de numărul de operaţii tipărite în fişierul de ieşire. Să notăm cu op numărul de operaţii efectuate. Astfel pentru fiecare fişier de ieşire corect, punctajul se va acorda astfel:
o dacă $1 ≤ op ≤ 2N$, se acordă $100%$ din punctaj;
o dacă 2N+1  op  4N , se acordă $75%$ din punctaj;
o dacă op > 4N, se acordă 50% din punctaj.
 Pentru toate testele de intrare există soluţie.
* Pentru un program care se încadrează în timpul de execuţie, punctajul acordat depinde de numărul de operaţii tipărite în fişierul de ieşire. Să notăm cu $op$ numărul de operaţii efectuate. Astfel pentru fiecare fişier de ieşire $corect$, punctajul se va acorda astfel:
** dacă $1 ≤ op ≤ 2N$, se acordă $100%$ din punctaj;
** dacă $2N+1 ≤ op ≤ 4N$, se acordă $75%$ din punctaj;
** dacă $op > 4N$, se acordă $50%$ din punctaj.
* Pentru toate testele de intrare există soluţie.
 
h2. Exemplu
table(example). |_. transform2.in |_. transform2.out |
| This is some
  text written on
  multiple lines.
| This is another
  text written on
  multiple lines.
| 4
1 1
2 2
3 3
4 1
3 4
4 4
2 3
1 2
1 3
2 3
1 1
2 2
4 2
4 4
3 4
3 1
| L 3 4
C 3 2
0 0 0
|
h3. Explicaţie
...
Prima dată se citeşte matricea $A$:
$1 1 0 0$
$0 1 1 0$
$0 0 1 1$
$1 0 0 1$
 
Apoi se citeşte matricea $B$:
$1 0 1 0$
$0 1 1 0$
$1 0 0 1$
$0 1 0 1$
 
Aplicăm operaţia $L 3 4$ interschimbând liniile $3$ şi $4$ în matricea $B$:
$1 0 1 0$
$0 1 1 0$
*$0 1 0 1$*
*$1 0 0 1$*
 
Aplicăm operaţia $C 3 2$ interschimbând coloanele $3$ şi $2$ în matricea $B$:
$1 *1 0* 0$
$0 *1 1* 0$
$0 *0 1* 1$
$1 *0 0* 1$
 
Citind linia $0 0 0$ înţelegem că s-au terminat operaţiile şi s-a obţinut matricea $A$.
== include(page="template/taskfooter" task_id="transform2") ==

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.