Sol:
#include <cstdio> | |
#include <algorithm> | |
using namespace std; | |
int solve(int n, int m){ | |
if(n > m) swap(n,m); | |
if(n == 1) return m; | |
if(n == 2) return m / 4 * 4 + (m % 4 == 1? 2 : (m % 4 >= 2? 4 : 0)); | |
return (n*m + 1) / 2; | |
} | |
int main(){ | |
int N,M,ans; | |
while(true){ | |
scanf("%d %d",&N,&M); | |
if(N == 0) break; | |
printf("%d knights may be placed on a %d row %d column board.\n",solve(N,M),N,M); | |
} | |
return 0; | |
} |
Không có nhận xét nào:
Đăng nhận xét