思路:看吧国际象棋棋盘就能明白规律了,但是要注意为两行的时候,棋子数要比原来多了1。
代码:
#include <iostream>
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
int n=min(a,b);
int m=max(a,b);
if(n==1)
cout<<m<<endl;
else if(n==2)
{
if(m&1)
cout<<m+1<<endl;
else
cout<<m<<endl;
}
else
{
int ans=n*(m/2);
if(m%2)
{
ans+=(n+1)/2;
}
cout<<ans<<endl;
}
}