HDU 5100 Chessboard

来源:互联网 发布:域名后缀cc 编辑:程序博客网 时间:2024/04/30 23:23

Chessboard

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 970    Accepted Submission(s): 420


Problem Description
Consider the problem of tiling an n×n chessboard by polyomino pieces that are k×1 in size; Every one of the k pieces of each polyomino tile must align exactly with one of the chessboard squares. Your task is to figure out the maximum number of chessboard squares tiled.
 

Input
There are multiple test cases in the input file.
First line contain the number of cases T (T10000).
In the next T lines contain T cases , Each case has two integers n and k. (1n,k100)
 

Output
Print the maximum number of chessboard squares tiled.
 

Sample Input
26 35 3
 

Sample Output
3624
 

Source
BestCoder Round #17
 

Recommend
heyang   |   We have carefully selected several similar problems for you:  5722 5721 5720 5719 5718 
 

数学推论  http://www.matrix67.com/blog/archives/5900

#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;int main(){int n,k,t;scanf("%d",&t);while(t--){scanf("%d%d",&n,&k);if(k>n)printf("0\n");else{int ans=n%k;    if(ans>k/2)    ans=ans-k;    printf("%d\n",n*n-ans*ans);}}return 0;}


0 0
原创粉丝点击