/ SeriousOJ /

Record Detail

Time Exceeded


  
# Status Time Cost Memory Cost
#1 Accepted 1ms 320.0 KiB
#2 Accepted 1ms 532.0 KiB
#3 Wrong Answer 54ms 564.0 KiB
#4 Wrong Answer 47ms 568.0 KiB
#5 Wrong Answer 158ms 576.0 KiB
#6 Time Exceeded ≥1100ms ≥680.0 KiB
#7 Time Exceeded ≥1100ms ≥704.0 KiB
#8 Wrong Answer 241ms 1.438 MiB
#9 Time Exceeded ≥1099ms ≥1.457 MiB
#10 Time Exceeded ≥1099ms ≥532.0 KiB
#11 Time Exceeded ≥1098ms ≥532.0 KiB

Code

#include <bits/stdc++.h>
#define int long long
#define endll '\n';
#define pb push_back
#define all(v) v.begin(), v.end()
using namespace std;

const int mod = 1e9 + 7, N = 1e6;
unordered_map<int, int> vis;

void solve()
{

   vis.clear();
   int n, k;
   cin >> n >> k;
   int L = 0, R = (k) / n;
   // cout << R << endl;
   // cout << "Greedy = " << R * (k - (R * n)) << endl;
   int ans = 0;
   while (L <= R)
   {
      int M = (L + R) / 2;
      int value = M, K = k - (M * n);
      if (value > K)
      {
         R = M - 1;
      }
      else
      {
         ans = max(ans, M);
         L = M + 1;
      }
   }

   for (int i = max(0LL, ans - 100000); i <= ans + 100; i++)
   {
      int value = i, K = k - (i * n);
      if (K <= 0)
         break;
      // cout << i << " , " << value * k << endl;
      ans = max(ans, value * K);
   }

   cout << ans << endll;
}

int32_t main()
{
   ios::sync_with_stdio(false);
   cin.tie(0);
   int t = 1;
   cin >> t;
   while (t--)
   {
      solve();
   }
   return 0;
}

Information

Submit By
Type
Submission
Problem
P1092 Bitwise AND
Language
C++20 (G++ 13.2.0)
Submit At
2024-09-08 15:45:51
Judged At
2024-09-08 15:45:51
Judged By
Score
10
Total Time
≥1100ms
Peak Memory
≥1.457 MiB