您的位置:首页 > 其它

codeforces A. Domino piling

2017-05-31 15:40 232 查看
网址:点击打开链接

A. Domino piling

time limit per test
2 seconds

memory limit per test
256 megabytes

input
standard input

output
standard output

You are given a rectangular board of M × N squares. Also you are given an unlimited number of standard domino pieces of 2 × 1 squares.
You are allowed to rotate the pieces. You are asked to place as many dominoes as possible on the board so as to meet the following conditions:

1. Each domino completely covers two squares.

2. No two dominoes overlap.

3. Each domino lies entirely inside the board. It is allowed to touch the edges of the board.

Find the maximum number of dominoes, which can be placed under these restrictions.

Input

In a single line you are given two integers M and N —
board sizes in squares (1 ≤ M ≤ N ≤ 16).

Output

Output one number — the maximal number of dominoes, which can be placed.

Examples

input
2 4


output
4


input
3 3


output
4


题意:有m*n的矩形,问最多放多少个2*1的矩形,分组讨论,如果m=1或者n=1的,只能放n/2或者m/2,其他的分奇偶。

#include<stdio.h>
#include<algorithm>
using namespace std;
int main()
{
int m,n,t;
scanf("%d%d",&m,&n);
if(m==1)
{
printf("%d\n",n/2);
return 0;
}
if(n==1)
{
printf("%d\n",m);
}
if(m&1)
{
if(n&1)
{
t=max(m,n)*(min(m,n)/2)+max(m,n)/2;
}
else
{
t=n/2*m;
}
}
else
{
t=m/2*n;
}
printf("%d\n",t);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: