Topcoder SRM 564 Div1 250

题意:给一个n*m的棋盘,自己选择一个位置(x,y),放置一个马,马可以走到(x-1,y-1),(x-1,y-2),(x-1,y+1),(x-1,y+2),(x+1,y-1),(x+1,y-2),(x+1,y+1),(x+1,y+2) 八个位置,前提是不能走出棋盘。马可以永不停息地走。问马能走到的不同位置数最多是多少?

解法:如果n>m,swap(n,m);如果n=1,ans=1,如果n=2,ans=(m+1)>>1;如果n=3且m=3,ans=8;其他情况ans=n*m;

具体为啥,还不会证明。

太简单了,代码就不贴了。

你可能感兴趣的:(Topcoder SRM 564 Div1 250)