Advertisement
ipilot

prA

Feb 6th, 2013
33
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.59 KB | None | 0 0
  1. #pragma warning(disable: 4996)
  2. #pragma comment(linker,"/STACK:64000000")
  3. #include <iostream>
  4. #include <sstream>
  5. #include <stdio.h>
  6. #include <memory.h>
  7. #include <algorithm>
  8. #include <set>
  9. #include <map>
  10. #include <string>
  11. #include <cstring>
  12. #include <vector>
  13. #include <cmath>
  14. #include <queue>
  15. #include <deque>
  16. #include <stack>
  17. #include <time.h>
  18. #include <cstdlib>
  19. #include <stdlib.h>
  20.  
  21. using namespace std;
  22.  
  23. #define mp make_pair
  24. #define pb push_back
  25. #define _(a) memset( (a), 0, sizeof( a ) )
  26. #define all(a) a.begin(), a.end()
  27. #define sz(a) (int)a.size()
  28. #define forpl(i, a, b) for(int i = a; i <= b; i++)
  29. #define forn(i, n) for(int i = 0; i < n; i++)
  30. #define formn(i, a, b) for(int i = a; i >= b; i--)
  31. #define foreach(it, a) for(auto it = a.begin(); it != a.end(); ++it)
  32.  
  33. typedef unsigned long long ull;
  34. typedef long long lint;
  35. typedef pair < int , int > pii;
  36. typedef long double ld;
  37.  
  38. const int INF = 1000 * 1000 * 1000;
  39. const lint LINF = 1000000000000000000LL;
  40. const double eps = 1e-9;
  41.  
  42. string s, t;
  43. vector <int> A, B;
  44.  
  45. int main()
  46. {
  47. #ifndef _DEBUG
  48.     freopen("input.txt", "r", stdin);
  49. #endif
  50.     int n, k;
  51.     cin >> n;
  52.     forn(i, n)
  53.     {
  54.         cin >> s >> t;
  55.         A.clear();
  56.         B.clear();
  57.         formn(j, sz(s)-1, 0) A.push_back(s[j]-'0');
  58.         formn(j, sz(t)-1, 0) B.push_back(t[j]-'0');
  59.         k =  sz(A) > sz(B) ? sz(A) : sz(B);
  60.         forn(j, k-sz(A)+1) A.push_back(0);
  61.         forn(j, k-sz(B)+1) B.push_back(0);
  62.         forn(j, k)
  63.         {
  64.             A[j] += B[j];
  65.             A[j+1] += A[j] / 2;
  66.             A[j] %= 2;
  67.         }
  68.         cout << i+1 << " ";
  69.         forn(j, k) cout << A[j];
  70.         if (A[k] > 0) cout << A[k];
  71.         cout << endl;
  72.     }
  73.     return 0;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement