Advertisement
Guest User

C++ Pirstines 2011 by Dominykas

a guest
Jan 30th, 2015
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.11 KB | None | 0 0
  1. #include <iostream>
  2. #include<fstream>
  3.  
  4. using namespace std;
  5.  
  6. const char in[]="in.txt";
  7. const char out[]="out.txt";
  8.  
  9. // by Dominykas 2014 VJG
  10.  
  11. const int DiD =100;
  12.  
  13. int n, lytis, ranka, dydis;
  14. int VyrD[DiD], VyrK[DiD], MotD[DiD], MotK[DiD];
  15.  
  16. void Skaitymas(){
  17.     ifstream failas(in);
  18.         failas>>n;
  19.         for(int i=0;i<DiD;i++){
  20.             VyrD[i]=0;
  21.             VyrK[i]=0;
  22.             MotD[i]=0;
  23.             MotK[i]=0;
  24.         }
  25.         for(int i=0;i<n;i++){
  26.             failas>>lytis>>ranka>>dydis;
  27.             if((lytis==4) &&(ranka==1)){
  28.                 MotK[dydis]+=1;
  29.             }
  30.             else if ((lytis==4) &&(ranka==2)){
  31.                 MotD[dydis]+=1;
  32.             }
  33.  
  34.             else if((lytis==3) &&(ranka==1)){
  35.                 VyrK[dydis]+=1;
  36.             }
  37.             else if ((lytis==3) &&(ranka==2)){
  38.                 VyrD[dydis]+=1;
  39.             }
  40.         }
  41.  
  42.     failas.close();
  43. }
  44.  
  45. int Poros(int masD[],int masK[]){
  46.     int poros=0;
  47.     for(int i=0;i<DiD;i++){
  48.         if((masD[i]!=0) && (masK[i]!=0)){
  49.             if(masD[i]>masK[i]){
  50.                poros+=masK[i];
  51.             }
  52.             else if (masK[i]>masD[i]){
  53.                 poros+=masD[i];
  54.             }
  55.             else if(masD[i]==masK[i]){
  56.                poros+=masK[i];
  57.             }
  58.         }
  59.     }
  60.     return poros;
  61. }
  62.  
  63. int Atliekamos(int masD[],int masK[]){
  64. int atl=0;
  65.     for(int i=0;i<DiD;i++){
  66.         if((masD[i]!=0) && (masK[i]!=0)){
  67.             if(masD[i]>masK[i]){
  68.                atl+=(masD[i]-masK[i]);
  69.             }
  70.             else {
  71.                 atl+=(masK[i]-masD[i]);
  72.             }
  73.         }
  74.         if(masD[i]!=0 && masK[i]==0){
  75.             atl+=masD[i];
  76.         }
  77.         if(masK[i]!=0 && masD[i]==0){
  78.             atl+=masK[i];
  79.         }
  80.     }
  81.  
  82.     return atl;
  83. }
  84.  
  85. void Rasymas(){
  86.     ofstream failasR(out);
  87.     failasR<<Poros(MotD,MotK)<<endl;
  88.     failasR<<Poros(VyrD,VyrK)<<endl;
  89.     failasR<<Atliekamos(MotD,MotK)<<endl;
  90.     failasR<<Atliekamos(VyrD,VyrK)<<endl;
  91.     failasR.close();
  92. }
  93. int main()
  94. {
  95.     Skaitymas();
  96.     Rasymas();
  97.     return 0;
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement