luogu_2105 K皇后

Posted Code_Together

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了luogu_2105 K皇后相关的知识,希望对你有一定的参考价值。

#include <bits/stdc++.h>
using namespace std;
int n,m,k,x[510],y[510],f[20010],ans;

int main(){
    scanf("%d%d%d",&n,&m,&k);
    for(int i=1;i<=k;i++)scanf("%d%d",&x[i],&y[i]);
    for(int i=1;i<=n;i++){
        int t=m;
        for(int j=1;j<=k;j++)
            if(i==x[j]){t=0; break;}
            else {
                if(f[y[j]]!=i){
                    f[y[j]]=i;
                    t--;
                }
                if ((i+y[j]-x[j])>0 && (i+y[j]-x[j])<=m && f[i+y[j]-x[j]]!=i){
                    f[i+y[j]-x[j]]=i;
                    t--;
                }
                if ((y[j]+x[j]-i)>0 && (y[j]+x[j]-i)<=m && f[y[j]+x[j]-i]!=i){
                    f[y[j]+x[j]-i]=i;
                    t--;
                }
            }
        ans+=t;
    }
    printf("%d\n",ans);
    return 0;
}

 

 

以上是关于luogu_2105 K皇后的主要内容,如果未能解决你的问题,请参考以下文章

洛谷 P2105 K皇后

luogu P1641 [SCOI2010]生成字符串

Luogu P2323「皇后游戏」

luogu2540 斗地主增强版

cogs luogu 2105. [NOIP2015] 信息传递

[luogu5176] 公约数