0
点赞
收藏
分享

微信扫一扫

LightOJ 1294:Positive Negative Sign 规律

新鲜小饼干 2023-02-07 阅读 60


Description

Given two integers: n and m and n is divisible by 2m, you have to write down the first n natural numbers in the following form. At first take first m integers and make their sign negative, then take next m integers and make their sign positive, the next m integers should have negative signs and continue this procedure until all the nintegers have been assigned a sign. For example, let n be 12 and m be 3. Then we have

-1 -2 -3 +4 +5 +6 -7 -8 -9 +10 +11 +12

If n = 4 and m = 1, then we have

-1 +2 -3 +4

Now your task is to find the summation of the numbers considering their signs.

Input

Input starts with an integer T (≤ 10000), denoting the number of test cases.

Each case starts with a line containing two integers: n and m (2 ≤ n ≤ 109, 1 ≤ m). And you can assume that nis divisible by 2*m.

Output

For each case, print the case number and the summation.

Sample Input

2

12 3

4 1

Sample Output

Case 1: 18

Case 2: 2
 

分析:

这种题先打表,然后大胆的猜就行

规律为n*m/2

规律证明:

第一组-1 -2 -3 +4 +5 +6 结果为3*3,第二组-7 -8 -9 +10 +11 +12结果为3*3,推广下,每组结果为m*m,一共n/(2*m)组,相乘得结果为m*n/2.

#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=1e6+5;
int main() {
LL n,c;
int T;
scanf("%d",&T);
int cas=0;
while(T--)
{
scanf("%lld %lld",&n,&c);
printf("Case %d: %lld\n",++cas,n*c/2);
}
return 0;
}

 

举报

相关推荐

0 条评论