要證明上面的式子是一件相當容易的事,所以我們不會要求你去做。我們要你做的事甚至更容易一些。給你 x 和 k 的值,請你找出 p 和 q 使得上面的式子成立
對每組測試資料輸出一列,含2個整數 p 和 q 。假如存在不只一組答案,輸出任何一個都可以。
[心得] 0.340
1. % (mod)只能用int ,所以變數宣告為double,運算時必須type casting 成int 型態
2. Solution
CASE:(整除)
==> 等號兩邊同乘k
==> kx= px+qx;
==> k=p+q; (最簡單的方式,令p為0, k=q)
CASE : (差 1)
最簡單的解,令p=-x, q=x;
#include <stdio.h>
#include <math.h>
int main()
{
long int x,k,p,q;
int i,n;
scanf("%d",&n);
while(n)
{
for(i=0;i<n;i++)
{
scanf("%ld %ld",&x,&k);
if( (int)x%(int)k ==0)
{
p=0; q=k;
}
else /*floor(x/k) ceil(x/k) 差 1*/
{
p=(0L-x);
q=x;
}
printf("%ld %ld\n",p,q);
}
n--;
}
system("pause");
return 0;
}
沒有留言:
張貼留言