Examen Práctica de PRO2 - Primavera 2018 - Turno 3 X95107


Statement
 

pdf   zip   tar

html

Aquest és un problema del jutge per fer lliuraments de l’examen de la pràctica

  • Aquest examen dura una hora i quaranta-cinc minuts
  • No es corregirà cap lliurament que no compili
  • L’examen es fa sense apunts
  • El 50% de la nota és de l’execució, l’altre 50% de la correcció manual
  • Es corregirà el darrer enviament amb més jocs de proves correctes
  • En cas de no passar cap joc de proves es farà la correcció manual del darrer enviament que compili
  • El nombre d’enviaments no fa baixar la nota

Descarregueu els fitxers públics per obtenir el material:

  • enunciat d’aquest examen
  • enunciat de la pràctica
  • especificació de BinTree
  • fitxer llegeixme.txt
  • codi ja implementat
  • fitxer Makefile
  • joc de proves públic

Ara us resumim els detalls més importants de la implementació que us donem.

Els atributs d’un objecte Almacen son:

  BinTree<int> a;
  vector<Sala> salas;
  int n_salas;

i el seu invariant de representació és:

  a te n_salas nodes
  cada node d'a te un valor entre 1 i n_salas
  tots els valors entre 1 i n_salas apareixen en algun node d'a
  salas te n_salas elements
  salas[i] representa la colocacio dels productes de la sala amb id i+1

Els atributs d’un objecte Sala són:

  int pos;
  vector<string> estanteria;

pos és el nombre de posicions de estanteria.

Haureu de fer servir una operació ja implementada de Sala:

int poner_items(string & id_p,int c_p)
\\ pre : c_p >0
\\ pos : s'han posat a estanteria fins a c_p vegades id_p a les posicions on hi havia "NULL", començant per l'esquerra
         el resultat ens diu quants id_p no han capigut

Després de llegir l’enunciat de l’examen atentament, canvieu el nom de els dos fitxers que us donem solution.cc.txt i priv_Almacen.hh.txt, que contenen les plantilles que heu de completar. Els noms han de ser solution.cc i priv_Almacen.hh

Entrada

Una seqüència d’instruccions seguint el format de l’enunciat de l’examen i del joc de proves públic.

Sortida

El seu resultat seguint el format de l’enunciat de l’examen i del joc de proves públic.

Observació

El Jutge prova el vostre lliurament mitjançant 4 jocs de proves:

  • sample: el joc de proves públic.
  • privat1: joc de proves privat que fa èmfasi en la nova operació dejar_hueco
  • privat2: joc de proves privat que fa èmfasi enla nova versió de l’operació distribuir
  • privat3: joc de proves privat que fa una mica de tot

Heu de lliurar un fitxer solution.tar creat amb la instrucció make tar definida al Makefile amb una implementació eficient de les operacions que es demanen.

Public test cases
  • Input

    7
    1 2 4 0 0 5 0 0 3 6 0 0 7 0 0
    1
    4
    9
    6
    12
    2
    4
    distribuir AAAA 3
    distribuir BBBB 5
    escribir 1
    escribir 2
    escribir 3
    escribir 4
    escribir 5
    escribir 6
    escribir 7
    vaciar 3 4
    vaciar 5 4
    escribir 3
    escribir 5
    fin
    
    

    Output

    distribuir AAAA 3
      0
    distribuir BBBB 5
      0
    escribir 1
      NULL
    escribir 2
      NULL NULL NULL NULL
    escribir 3
      NULL NULL NULL NULL NULL NULL NULL NULL NULL
    escribir 4
      AAAA BBBB BBBB NULL NULL NULL
    escribir 5
      AAAA BBBB NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
    escribir 6
      AAAA BBBB
    escribir 7
      BBBB NULL NULL NULL
    vaciar 3 4
    vaciar 5 4
    escribir 3
      NULL NULL NULL NULL NULL NULL NULL NULL NULL
    escribir 5
      NULL NULL NULL NULL AAAA BBBB NULL NULL NULL NULL NULL NULL
    fin
    
  • Information
    Author
    PR02
    Language
    Catalan
    Official solutions
    Make
    User solutions
    Make