Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //1.txt
- /*
- 6
- 15 10 22
- 15 40 13
- 23 26 26
- 110 30 58
- 33 33 32
- 0 56 0
- 2 1 3
- */
- #include <iostream>
- #include <iomanip>
- #include <fstream>
- using namespace std;
- // ----------------------------------------------------------------------------------------------
- const char duomF[] = "1.txt";
- const char rezF[] = "1rez.txt";
- const int CMax = 11; //Imones skyriu skaicius
- const int LMax = 4; //Logotipu skaicius
- // ----------------------------------------------------------------------------------------------
- void skaitymas(int L1[], int L2[], int L3[], int B[], int &k)
- {
- ifstream df(duomF);
- int v = 0;
- df >> k;
- for (int i = 1; i <= k; i++)
- {
- df >> L1[v] >> L2[v] >> L3[v];
- v += 1;
- }
- df >> B[1] >> B[2] >> B[3];
- df.close();
- }
- void taskaiSkyriuje(int L1[], int L2[], int L3[], int k, int taskai[]) //Logotipu surinkti balai
- {
- taskai[1] = 0; taskai[2] = 0; taskai[3] = 0;
- for(int i = 1; i <= k; i++)
- {
- if ((L1[i] > L2[i]) && (L1[i] > L3[i])) taskai[1] += 4;
- if ((L2[i] > L1[i]) && (L2[i] > L3[i])) taskai[2] += 4;
- if ((L3[i] > L1[i]) && (L3[i] > L2[i])) taskai[3] += 4;
- if ((L1[i] == L2[i]) && (L1[i] > L3[i])) {taskai[1] += 2; taskai[2] += 2;}
- if ((L1[i] == L3[i]) && (L1[i] > L2[i])) {taskai[1] += 2; taskai[3] += 2;}
- if ((L2[i] == L3[i]) && (L2[i] > L1[i])) {taskai[2] += 2; taskai[3] += 2;}
- }
- }
- int balsuSuma(int skyriausBalsai[], int k) //Logotipu tasku suma skyriuje
- {
- int balsuSuma = 0;
- for(int i = 0; i < k; i++) balsuSuma += skyriausBalsai[i];
- return balsuSuma;
- }
- int laimejo(int B[], int taskai[])
- {
- int laimetojas;
- int max = 0;
- if ((taskai[1] == taskai[2]) || (taskai[1] == taskai[3]) || (taskai[2] == taskai[3]))
- {
- taskai[1] += B[1];
- taskai[2] += B[2];
- taskai[3] += B[3];
- }
- for (int i = 1; i < 4; i++)
- {
- if(taskai[i] > max)
- {
- max = taskai[i];
- laimetojas = i;
- }
- }
- return laimetojas;
- }
- // ----------------------------------------------------------------------------------------------
- int main()
- {
- int L1[CMax], L2[CMax], L3[CMax]; // Skyriu balsavimo uz logotipa rezultatai.
- int balsai[4], taskai[4];
- int B[LMax]; // Direktoriu duoti taskai
- int k; // Skyriu skaicius
- skaitymas(L1, L2, L3, B, k);
- balsai[1] = balsuSuma(L1, k); // Pirmo logotipo tasku suma
- balsai[2] = balsuSuma(L2, k); // Antro logotipo tasku suma
- balsai[3] = balsuSuma(L3, k); // Trecio logotipo tasku suma
- taskaiSkyriuje(L1, L2, L3, k, taskai); // Logotipu surinkti taskai
- // Rezultatu razymas i faila.
- ofstream rf(rezF);
- rf << balsai[1] << " " << balsai[2] << " " << balsai[3] << endl; // Surinkti balsai
- rf << taskai[1] << " " << taskai[2] << " " << taskai[3] << endl; // Surinkti taskai
- rf << laimejo(B, taskai) << endl; // Laimetojas
- rf.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement