Quipex

M.blackFriday

Apr 3rd, 2017
383
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.02 KB | None | 0 0
  1. #include <iostream>
  2. #include <iomanip>
  3. #include <cstring>
  4. #include <string>
  5. #include <cstdio>
  6. #include <cstdlib>
  7. #include <algorithm>
  8. #include <vector>
  9. #include <cmath>
  10. #include <fstream>
  11. #include <queue>
  12. #include <iterator>
  13. #include <bitset>
  14. #include <set>
  15. #include <unordered_set>
  16. #include <map>
  17. #include <unordered_map>
  18.  
  19. using namespace std;
  20.  
  21. //Utilities
  22. #define sqr(x) ((x)*(x))
  23. #define cbr(x) ((x)*(x)*(x))
  24. #define rep(c, i, n) for((i)=(c); (i)<(n); (i)++)
  25.  
  26. //Geometry
  27. /**
  28. struct pt { long long x, y; };
  29. double vecmul(pt a, pt b) { //Векторное умножение А*В
  30. return (a.x*b.y - b.x*a.y);
  31. }
  32. //скалярное умножение a*b = |a|*|b|*cos(a,b)
  33.  
  34. double dist(double ax, double ay, double bx, double by) { return sqrt(sqr(ax - bx) + sqr(ay - by)); }
  35. */
  36.  
  37. //DBG
  38. //template<typename T, typename T2>void printarr(T  a[], T2 sz, T2 beg = 0) { for (T2 i = beg; i<sz; i++) cout << a[i] << " "; cout << endl; }
  39. #define DBG(a)         cout<<#a<<"="<<(a)<<"\n"
  40. #define DBG2(a,b)       cout<<#a<<"="<<(a)<<", "<<#b<<"="<<(b)<<"\n"
  41. #define DBG3(a,b,c)     cout<<#a<<"="<<(a)<<", "<<#b<<"="<<(b)<<", "<<#c<<"="<<(c)<<"\n"
  42.  
  43. //Files
  44. #define FILE_MODE(FILE) freopen(FILE".in", "r", stdin), freopen(FILE".out", "w", stdout)
  45.  
  46. //Constants
  47. #define PI    3.1415926535897932
  48. #define INF   1011111111
  49. #define LLINF 1000111000111000111LL
  50. #define eps   1e-14
  51. #define mod   1000000007
  52. #define ll long long
  53. #define ull unsigned long long
  54. //-------------------------------------------------
  55. #define N 100010
  56.  
  57. int main() {
  58.     int price[N];
  59.     queue<int> priceDiscount;
  60.     queue<int> out;
  61.     int n;
  62.     cin >> n;
  63.     int i;
  64.  
  65.     rep(0, i, n) {
  66.         cin >> price[i];
  67.         if (!priceDiscount.empty()) {
  68.             if (price[i] != priceDiscount.front()) {
  69.                 out.push(price[i]);
  70.                 priceDiscount.push(price[i] / 3 * 4);
  71.             }
  72.             else priceDiscount.pop();
  73.         }
  74.         else {
  75.             out.push(price[i]);
  76.             priceDiscount.push(price[i] / 3 * 4);
  77.         }
  78.     }
  79.     while (!out.empty()) {
  80.         cout << out.front() << endl;
  81.         out.pop();
  82.     }
  83.     return 0;
  84. }
Advertisement
Add Comment
Please, Sign In to add comment