Ankit_132

C

Jun 18th, 2023
377
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.02 KB | None | 0 0
  1.  
  2. #include <bits/stdc++.h>
  3.  
  4. using namespace std;
  5.  
  6. #define ll     long long
  7. #define _test   int _TEST; cin>>_TEST; while(_TEST--)
  8. #define ff     first
  9. #define ss     second
  10. #define pb     push_back
  11. #define ppb    pop_back
  12.  
  13. int main()
  14. {
  15.     int num[9] = {1, 10, 100, 1000, 10000, 100000, 1000000, 10000000, 100000000};
  16.  
  17.     _test
  18.     {
  19.         ll int a, b, c, k;
  20.         cin>>a>>b>>c>>k;
  21.  
  22.         int ansa=-1, ansb;
  23.  
  24.         for(int i=num[a-1]; i<num[a]; i++)
  25.         {
  26.             int minb = max(num[b-1], num[c-1] - i);
  27.             int maxb = min(num[b]-1, num[c]-1 - i);
  28.  
  29.             if(maxb < minb)     continue;
  30.  
  31.             int options = maxb - minb + 1;
  32.  
  33.             if(options >= k)
  34.             {
  35.                 ansa = i;
  36.                 ansb = minb + k - 1;
  37.                 break;
  38.             }
  39.  
  40.             k -= options;
  41.         }
  42.  
  43.         if(ansa == -1)
  44.         {
  45.             cout<<-1<<"\n";
  46.             continue;
  47.         }
  48.  
  49.         cout<<ansa<<" + "<<ansb<<" = "<<ansa+ansb<<"\n";
  50.     }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment