https://codeforces.com/problemset/problem/1359/A
思路:我们先确定最大值,显然要么是 n/k,要么是 m ,次小值同理
以下是代码实现:
#include<iostream>
using namespace std;
void solved()
{
int n,m,k;
cin>>n>>m>>k;
int cnt1=min(n/k,m);
int cnt2=(m-cnt1)/(k-1);
if((m-cnt1)%(k-1)!=0)
{
cnt2++;
}
cout<<cnt1-cnt2<<endl;
}
int main()
{
int t;
cin>>t;
while(t--)
{
solved();
}
return 0;
}