这个题目不难,但是要是不知道floor跟ceil这两个函数,也很蛋疼。
关键就是用这两个函数floor向下取整,ceil向上取整
然后这个题还有一点是题目的Output不是唯一的,只要输出其中一个的就行了。
double floor(double x);
double ceil(double x);
#include<cstdio>
#include<cmath>
#include<iostream>
using namespace std;
int main()
{
long double x,k;
long long x1,x2,q,p,key;
int ncase;
scanf("%d",&ncase);
bool flag;
while(ncase--)
{
flag = false;
cin>>x>>k;
x1 = (long long)floor(x/k);
x2 = (long long)ceil(x/k);
for(q = 0 ; q <= k ; q++)
{
key = x - q*x1;
if(key % x2 == 0)
{
cout<<q<<" "<<key/x2<<endl;
break;
}
}
}
return 0;
}