ACM复习(50)11157 LRC,你怎么看?

Description
LRC是校队里面的一个棋牌高手。12年夏天,他通过自习算法书上的“n皇后问题”,懂得了回溯算法。深爱国际象棋的他,对此题爱不释手。这时,
强神站了出来说:“如果,把皇后变成骑士,那么,LRC,你怎么看?”首先,骑士的攻击范围如图:
0X0X0
X000X
00K00
X000X
0X0X0
对于一个5*5的棋盘,0表示空位,K表示骑士,X表示骑士的攻击范围。
那么,对于一个n*n的棋盘,最多能够放多少个骑士,使得每个骑士两两之间不得攻击到呢?
LRC凌乱了,他向未来的ACMER求助。
未来的ACMER,你怎么看?

(出题人 胖子)

输入格式
只有一行,一个正整数N(N<=1000),表示现在有一个N*N的棋盘。

输出格式
输出一个整数,占一行,表示最多能放多少个骑士。

输入样例
3

输出样例
5


解题思路

规律题

PS: 最近比较懒。。在月末才赶紧放了个水题上来

#include<stdio.h>
int main()
{
    int n, total;
    scanf("%d", &n);
    if(n == 1)
        total = 1;
    else if(n == 2)
        total = 4;
    else if(n % 2)
        total = n * n / 2 + 1;
    else
        total = n * n / 2;
    printf("%d\n", total);
    return 0;
}

猜你喜欢

转载自blog.csdn.net/sinat_34200786/article/details/80530250
今日推荐