#1061
Cifru1
Costel a descoperit într-o debara servieta cu cifru a tatălui său. Cifrul este compus din 4
discuri metalice pe care sunt inscripţionate cifrele de la 0
la 9
. Fiecare disc se poate mişca individual, de sus în jos sau de jos în sus, formându-se combinaţii de cifre. De multe ori, datorită comodităţii, combinaţia ce permite deschiderea servietei este formată numai din cifre identice: 0000
, 1111
etc.
Costel îşi imaginează un cifru compus din N
discuri metalice, fiecare având inscripţionate cifrele de la 0
la 9
, fiecare putând fi deplasat în cele două direcţii specificate anterior. Prin mutare Costel înţelege deplasarea unui disc în sus sau în jos, cu o singură poziţie, adică deplasarea discului până la cifra precedentă, respectiv următoare celei curente.
Realizaţi un program care, cunoscând poziţia iniţială a fiecărui disc dintre cele N
discuri ale cifrului, determină şi afişează:
a) cifra cea mai mare care apare pe discurile cifrului în forma iniţială;
b)
b1) numărul minim de mutări necesare pentru ca numărul obţinut pe cifru să fie compus numai din cifre identice, număr necesar deschiderii servietei;
b2) cifra cea mai mică ce se poate obţine în urma efectuării numărului minim de mutări determinat;
b3) numărul de combinaţii formate din cifre identice, care se poate obţine în urma efectuării numărului minim de mutări determinat.
OJI 2012, Clasa a VI-a
Problema | Cifru1 | Operații I/O |
cifru1.in /cifru1.out
|
---|---|---|---|
Limita timp | 1 secunde | Limita memorie |
Total: 2 MB
/
Stivă 2 MB
|
Id soluție | #49748143 | Utilizator | |
Fișier | cifru1.cpp | Dimensiune | 828 B |
Data încărcării | 13 Martie 2024, 20:16 | Scor / rezultat | Eroare de compilare |
cifru1.cpp:40:1: error: stray '\302' in program return 0; ^ cifru1.cpp:40:1: error: stray '\240' in program cifru1.cpp:40:1: error: stray '\302' in program cifru1.cpp:40:1: error: stray '\240' in program cifru1.cpp:40:1: error: stray '\302' in program cifru1.cpp:40:1: error: stray '\240' in program cifru1.cpp:40:1: error: stray '\302' in program cifru1.cpp:40:1: error: stray '\240' in program cifru1.cpp:40:1: error: stray '\302' in program cifru1.cpp:40:1: error: stray '\240' in program cifru1.cpp:2:1: error: 'fstream' does not name a type fstream fin ("cifru1.in"); ^ cifru1.cpp:3:1: error: 'fstream' does not name a type fstream fout ("cifru1.out"); ^ cifru1.cpp: In function 'int main()': cifru1.cpp:7:5: error: 'fin' was not declared in this scope fin>>n; ^ cifru1.cpp:15:27: error: 'mut' was not declared in this scope v[j]=v[j]+min(mut,mut2); ^ cifru1.cpp:15:31: error: 'mut2' was not declared in this scope v[j]=v[j]+min(mut,mut2); ^ cifru1.cpp:15:35: error: 'min' was not declared in this scope v[j]=v[j]+min(mut,mut2); ^ cifru1.cpp:21:27: error: 'mut' was not declared in this scope v[j]=v[j]+min(mut,mut2); ^ cifru1.cpp:21:31: error: 'mut2' was not declared in this scope v[j]=v[j]+min(mut,mut2); ^ cifru1.cpp:21:35: error: 'min' was not declared in this scope v[j]=v[j]+min(mut,mut2); ^ cifru1.cpp:27:5: error: 'fout' was not declared in this scope fout<<mx<<endl; ^ cifru1.cpp:27:15: error: 'endl' was not declared in this scope fout<<mx<<endl; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Cifru1 face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.