Bitbucket is a code hosting site with unlimited public and private repositories. We're also free for small teams!

Close
Tema 1 SPRC

Iulius Curt | 343 C3
--------------------------------------------------------------------------------

Continut arhiva:
	- Makefile
	- README
	- colete.in		- Fisier de intrare mostra
	- po.dat		- Fisier cu date PostOffice-uri
	- poclient.c	- Sursa client
	- poserver.c	- Sursa server
	- poserver.h	- Header server (macro-definitii si o structura ajutatoare)
	- po.x			- Interfata RPC

Abordare:
	- Un colet va pleca de la sursa pana la cel mai apropiat oficiu postal, iar
	  de aici pana la oficiul postal cel mai apropiat de destinatie, urmand sa
	  calatoreasca pana la destinatie

		S  --d1-->  PO_S  --d2-->  PO_D  --d3-->  D

	- Astfel, se minimizeaza d1 si d3, fara a se urmari neaparat minimizarea
	  distantei totale
	- Comunicatia se face folosind structuri definite in po.x

Abordare algoritmica:
	- Operatiile de initializare sunt realizate o singura data per rularea
	  serverului, inainte de prima cerere. Initializarea consta in citirea
	  fisierului de input, constructia structurii de date si sortarea ei.
	- Pentru a determina oficiul postal cel mai apropiat de un anume punct se
	  foloseste o tehnica de sweep-line:
		- Initial lista de oficii e sortata dupa coordonata latitudinii.
		- La fiecare cerere se cauta in stanga si in dreapta punctului de
		  referinta in limita distantei optime la momentul actual. Adica
		  pentru cel mai apropiat punct gasit pana in momentul actual aflat
		  la distanta X, se vor considera puncte ce au componenta orizontala
		  a distantei fata de punctul de referinta mai mica decat X.
		- Algoritmul itereaza pana cand niciun alt punct nu mai satisface
		  conditia.

Recent activity

Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.