Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- /**
- Egy vendéglő megnyitó ünnepségén több személy vesz részt. Minden személy kiválaszt egy-egy menüt a rendelkezésre álló menükből.
- Mivel a vendéglőnek egyelőre csak egy szakácsa van, a rendeléseket csak rendre tudja teljesíteni, mert egyszerre csak egy menü
- elkészítésével tud foglalkozni. Tudva azt, hogy a szakács csak akkor fog neki a főzésnek, ha begyűlt minden rendelés, segítsünk
- neki megtalálni az ételek elkészítésésnek egy olyan sorrendjét, hogy a kliensek várakozási ideje minimális legyen.
- A menu.be állomány első sorában meg van adva egy természetes szám, ami a kliensek számát jelöli és a következő sorokban egy-egy
- szám ami azt jelöli, hogy mennyi idő szükséges egy személy menüjének elkészítéséshez.
- Pl. menu.be: 30 40 20 25 60
- Eredmény: 86
- 3 4 1 2 5
- */
- using namespace std;
- struct rest{
- int ido;
- }a[50];
- void beolvas(rest a[], int &n)
- {
- ifstream f("menu.be");
- f>>n;
- for(int i=1;i<=n;i++)
- f>>a[i].ido;
- }
- void rendez (rest a[],int n)
- {
- int jo=1;
- int nn=n;
- do{
- jo=1;
- for(int i=1;i<=nn-1;i++)
- if(a[i].ido>a[i+1].ido)
- {
- rest x=a[i];
- a[i]=a[i+1];
- a[i+1]=x;
- jo=0;
- }
- nn--;
- }while(jo==0);
- }
- void moho( rest a[], int n)
- {
- int o=0,o1=0;
- for(int i=1;i<=n;i++){
- o1=o1+a[i].ido;
- o=o+o1;
- }
- cout<<o/5;
- }
- int main()
- {
- int n;
- beolvas(a,n);
- rendez(a,n);
- moho(a,n);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement