Advertisement
STANAANDREY

vase

Mar 6th, 2019
219
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.32 KB | None | 0 0
  1. #include <fstream>
  2. using namespace std;
  3. ifstream in("vase1.in");
  4. ofstream out("vase1.out");
  5. long long n,d[100001],s[100001],x,difs,difd,vas,grs,grj;
  6. char v;
  7. long long ss,sd;
  8. int main()
  9. {in>>n;
  10. for(int i=1;i<=n;i++)
  11. {
  12.     in>>x>>v;
  13.     if(v=='D')
  14.     {
  15.         d[i]=x;
  16.         sd=sd+x;
  17.     }
  18.     else
  19.     {
  20.         ss=ss+x;
  21.         s[i]=x;
  22.     }
  23. }
  24. in>>vas;
  25. difs=(ss-sd)/2;
  26. out<<ss-difs<<'\n';
  27. difd=-difs;
  28. if(d[vas]!=0)
  29. {
  30.     for(int i=0;i<vas;i++)grj=grj+d[i];
  31.     grs=grj+d[vas];
  32.     if(grj-difd<0)
  33.     {
  34.         if(grs-difd<=0)
  35.         {
  36.             out<<difd-grj<<" S"<<'\n';
  37.             out<<difd-grs<<" S"<<'\n';
  38.         }
  39.         else
  40.         {
  41.             out<<difd-grj<<" S"<<'\n';
  42.             out<<grs-difd<<" D"<<'\n';
  43.         }
  44.     }
  45.     else
  46.     {
  47.         out<<grs-difd<<" D"<<'\n';
  48.         out<<grj-difd<<" D"<<'\n';
  49.     }
  50. }
  51. else
  52. {
  53.     for(int i=1;i<vas;i++)grj=grj+s[i];
  54.     grs=grj+s[vas];
  55.     if(grj-difs<0)
  56.     {
  57.         if(grs-difs<=0)
  58.         {
  59.             out<<difs-grj<<" D"<<'\n';
  60.             out<<difs-grs<<" D"<<'\n';
  61.         }
  62.         else
  63.         {
  64.             out<<grs-difs<<" S"<<'\n';
  65.             out<<difs-grj<<" D"<<'\n';
  66.         }
  67.     }
  68.     else
  69.     {
  70.         out<<grs-difs<<" S"<<'\n';
  71.         out<<grj-difs<<" S"<<'\n';
  72.     }
  73. }
  74.     return 0;
  75.  
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement