| iulia_2018 a întrebat:

Salut,
am si eu nevoie urgent de o rezolvare pentru urmatoare problema de informatica(stiu doar ca este o aplicatie a algoritmului Roy-Floyd pentru grafuri orientate):'Într–o fabrică se realizează  un tip de produs care este format din mai multe subansambluri. Fiecare subansamblu este produs de o secţie. Un subansamblu poate fi la rândul său compus din alte subansamble. Există o secţie în care se asamblează produsul final şi secţii care, pentru a produce propriul subansamblu, nu au nevoie de subansambluri produse în secţiile fabricii. Secţiile fabricii şi relaţiile dintre secţii pot fi reprezentate printr-un graf orientat, astfel:  secţiile sunt nodurile grafului, iar arcul  [x, y] înseamnă că  subansamblul produs de secţia x este folosit de sectia y. Desenaţi o organigramă ipotetică  a secţiilor fabiricii.
 
Informaţiile despre  organigrama fabricii se citesc dintr-un fişier text:  de pe prima linie n – numărul de sectii si m  - numărul de arce ale grafului, de pe următorul  rând  un şir de n  numere întregi care reprezintă  stocul de subansamble realizate în fiecare secţie, de pe următorul rand un şir de n  numere intregi care reprezintă numarul de angajaţi  din fiecare secţie şi apoi, de pe următoarele m  rânduri, cate trei valori numerice întregi care reprezintă etichetele nodurilor terminale ale unui arc (x şi y) şi numărul de subansamble pe care trebuie să le furnizeze secţia x secţiei y, pentru a se putea obţine o unitate din produsul final.
 
Scrieţi o aplicaţie care să furnizeze următoarele informaţii:
a)      Să se verifice dacă se poate realiza o unitate din produsul final folosind subansamblurile care există pe stoc in secţiile fabricii. Dacă nu se poate realiza o unitate din produsul final să se precizeze secţiile care sunt vinovate că nu au produs suficiente subansambluri.
b)      În fabrică, se închid două dintre  secţiile care realizează subansambluri ( subansamblurile se vor cumpăra de alţi producători ). Etichetele nodurilor corespunzătoare  acestor secţii se citesc de la tastatură. Verificaţi  dacă  prin închiderea acestor secţii, alte secţii ale fabricii nu devin inutile. O secţie devine inutilă atunci cand prin inchiderea unei alte secţii, sunbansamblurile produse de ea nu mai sunt necesare. Dacă apar secţii inutile in urma închiderii celor două secţii iniţiale, afisaţi eticheta corespunzătoare secţiei şi închideţi şi aceste secţii.
c)      Reorganizati fabrica prin eliminare de secţii – pană cand nu vor mai exista secţii inutile. Afişati numărul de angajaţi care trebuie disponibilizati prin inchiderea secţiilor. Afişati organigrama fabricii dupa reorganizare prin etichetele secţiilor care au mai rămas, şi arcele dintre acestea.
(Indicatie. Generaţi subgraful iniţial, prin eliminarea nodurilor corespunzătoare secţiilor care  se închid. Generati apoi subgrafuri ale ultimului subgraf obţinut prin eliminarea nodurilor  care au gradul extern egal cu 0. Subgraful final obţinut va corespunde noii organigrame. Când eliminaţi un nod, adunaţi la numarul angajaţilor disponibilizaţi  angajaţii din secţia corespunzătoare nodului).
 
Multumesc anticipat celor care vor incerca sa ma ajute.
(nu conteaza limbajul de programare:pascal sau c++)

2 răspunsuri:
| Annitu a răspuns:

Sincer...sadnu stiusad

anonim_4396
| anonim_4396 a răspuns:

Aiiii de capu meu, ce subansamblu? eu nu am inteles nimic.