Advertisement
Junaid_Hossain

I want Long Long Salary

Dec 22nd, 2023
1,137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.78 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #define ul unsigned long long int
  4.  
  5. ul findlcm(vector<ul> salaries, ul size)
  6. {
  7.     ul lcm = salaries[0];
  8.  
  9.     for (int i = 1; i < size; i++)
  10.     {
  11.         lcm = (((salaries[i] * lcm)) /
  12.                (gcd(salaries[i], lcm)));
  13.     }
  14.  
  15.     return lcm;
  16. }
  17.  
  18. int main()
  19. {
  20.     int t;
  21.     cin >> t;
  22.  
  23.     while (t--)
  24.     {
  25.         ul size, startingSalary;
  26.         cin >> size >> startingSalary;
  27.         vector<ul> salaries;
  28.  
  29.         for (ul i = 0; i < size; i++)
  30.         {
  31.             int temp;
  32.             cin >> temp;
  33.             salaries.push_back(temp);
  34.         }
  35.  
  36.         salaries.push_back(startingSalary);
  37.  
  38.         ul common = findlcm(salaries, size + 1);
  39.  
  40.         cout << (common / startingSalary) - 1 << endl;
  41.     }
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement