Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- typedef long long ll;
- int main()
- {
- ll n,k;
- int cs;
- cin>>cs;
- for(int c =1; c<=cs; c++)
- {
- int cnt=0;
- cin>>n>>k;
- if(n==k) {printf("Case #%d: 0 0\n",c);continue;}
- priority_queue<ll> pq;
- pq.push(n);
- while(!pq.empty())
- {
- ll p = pq.top();
- pq.pop();
- cnt++;
- if(k==cnt)
- {
- if(p%2==0)
- printf("Case #%d: %lld %lld\n",c,max(p/2, p/2-1), min(p/2,p/2-1));
- else
- printf("Case #%d: %lld %lld\n",c,max(p/2, p/2), min(p/2,p/2));;
- break;
- }
- if(p%2==0)
- {
- pq.push(p/2);
- pq.push(p/2-1);
- }
- else
- {
- pq.push(p/2);
- pq.push(p/2);
- }
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement